web-dev-qa-db-ja.com

メニュー内のクリックできないプレースホルダ

私は、トップレベルのメニュー項目(子メニュー項目を持つ親メニュー項目)の1つ以上をクリックできないようにしたいのです。そうすれば、訪問者は子メニュー項目をクリックすることしかできなくなります。水平に配置されたメニューの場合.

トリック(またはトリックまたはハックまたは....)をすることができるそこにそこにプラグインはありますか?

4
Morten

はい、これはそれに任意のURLを割り当てるメニューにカスタムリンクを追加することによって可能です(この例のために私は#を追加しました)それからメニューに追加をクリックしてください。メニューに入ったらそれを開き、割り当てたURLを削除して保存します。あなたが最初にURLを入れなかった場合、WordPressはあなたがそれをメニューに追加させません。あなたのページにあなたはそれの上にカーソルを置くことができるでしょう、そして、ドロップダウンの子供たちは現れるでしょうが、あなたは親の「プレースホルダー」をクリックすることができないでしょう。

alt textalt text

8
Chris_O

まだほとんどのブラウザで、要素のhref属性が "#"、 ""、あるいは存在しない場合でも、クリック可能になります。そのため、以前の応答は100%うまくいかないでしょう。それはあなたのテーマメニューとあなたのニーズ/能力によってどのようにコードを処理するかによります。メニューコード全体を変更したくない場合は、2つの基本的なオプションがあります。

  • 適切な場所(親リンクの上+)の要素をまたはのようなものに置き換えます。ただし、これは大きなCSS編集の必要性につながる可能性があります。

または

  • それらの場所で要素にこの属性を含める:

onclick = "falseを返します。"

それはすべての主要なブラウザでうまくいくでしょう。矢印カーソルを作成したり、下線を無効にしたりするためのスタイルを追加できます。

1
Pavel

私はプラグインのDisable Parent Menu Linkが好きです。私のパーマリンク構造のせいで、私が上記の空のカスタムメニューのトリックメニューを試したとき、私は問題を見つけました - それはまだページではないのですがそれを親として機能させたかったのですか?なかなか思い出せませんが、プラグインに戻りました。

0
OYF