Sh404sef urlマネージャーで、メニュー項目のないページにsef urlが作成されていることに気付きました。非SEF URLはindex.php?option=com_content&id=27&lang=en&view=category
私はそれ以来、新しいカテゴリを作成し、対応する非sef URLを見つけました。そのため、Joomlaがこれらのリンクを自動的に作成しているようです。
とにかく、念のために
[〜#〜] misc [〜#〜]非sefのURLを回避したいのは、過去にカテゴリページとして使用する記事を作成したことがあるからです。おそらくレイアウトのオーバーライドを使用する必要があるため、おそらく冒涜でしょうか?
Joomlaを「これらのリンクを作成する」と考えず、Joomlaが理解してページをロードできるさまざまなURLがあることを認識するのが最善です。
Non-sef urlは、SEF urlが変換される変数を表します。あなたのURLから欠落している唯一の部分は、メニュー項目IDに対応するItemid
です。
私は実際には、これらのタイプのURLが機能しないようにするためのソリューションを使用していません。あなたの最善の策は、ページの読み込みの早い段階で(おそらくシステムプラグインを使用して)URLを実際に確認し、URLをJRouteに渡して(可能であれば有効にして検索エンジンに適したURLに変換し)、そのURLにリダイレクトすることです。 URLが一致しない場合はURL。
これはPOSTでは行わないでください(投稿データがリダイレクトで失われる可能性が高いため)。また、奇妙な問題が発生する可能性があります(JRouteが常に正確であるとは限らないため、同様のURLに対して複数の回答が得られる場合があります)。
最後に、このようなプラグイン http://extensions.joomla.org/profile/extension/site-management/seo-a-metadata/canonical-url のようなプラグインがすでに存在している可能性があります。 (これを試したことがなく、タッチをググっただけです。)