ビューの1つのクエリを変更する必要があります。私はhook_views_query_alter()
を見つけましたが、私がそれをどうするかを理解することはできません。 [〜#〜] api [〜#〜] によれば、
このフックはMODULENAME.views.incに配置する必要があり、自動ロードされます。 MODULENAME.views.incは、MODULENAME_views_api()によって返された「パス」キーで指定されたディレクトリ、または「パス」が指定されていない場合は.moduleファイルと同じディレクトリにある必要があります。
わかりましたので、フック付きの関数をviews.incファイルに置くことを知っています。しかし、実際の.moduleファイルには何を入れる必要がありますか?このフックを使用して私を正しい方向に向ける完全なモジュールコードの例を見つけることができないようです。モジュールコードにMODULENAME_views_api()
のみが含まれていますか?
モジュールが他のフックを実装する必要がない場合は、うん、hook_views_api()
が.moduleファイルに必要なすべてです。
hook_views_api()
に正しいパスを指定する限り、ビューはどこを見るかを認識し、必要なときにファイルを動的に含めます。
通常、動的コードレジストリでピックアップするには、モジュールの.infoファイルに_files[] = mymodule.FILENAME.inc
_を配置する必要がありますが、その外観からは、ビューの場合はそうではありません。
このためのコード例を探している場合は、 Administration Views モジュールを見てください。 .moduleファイルにはhook_views_api()
のみが含まれている(そして動作する)ため、正しいことを行っていると確信できます。