Wordpressプラグインのショートコードが機能しない


9

次のようにプラグインでショートコードを定義しています:

// [tag1] -> Some Longer Text
function shortcode_example1() {
    return 'Some Longer Text';
}
add_shortcode('tag1', 'shortcode_example1');

今ワードプレスのページ内で私は次のようにプラグインにアクセスしようとしています:

[tag1]

ただし、ショートコードは実行されず、出力は「[tag1]」になります。手伝ってくれますか?

ご協力いただきありがとうございます。


あなたのコードは、プラグインまたはfunctions.phpのいずれかで、WP 3.9.2で動作します。他のショートコードは問題なく動作しますか?
ガブリエル

1
このショートコードは問題なく動作することも確認しました。何かがdo_shortcodeフィルターをthe_contentフックから外しましたか?デフォルトのテーマに切り替えて(テーマはthe_content()?を使用しています)、すべてのプラグインを無効にしてみてください。次に、それらを1つずつ有効にして、潜在的な競合を見つけます。
helgatheviking 2014

回答:


31

ここで確認することがいくつかあります

  • 1つ:プラグインがアクティブ化されていますか。

  • 2つ目は、メインプラグインファイルのショートコードです。そのコードがプラグイン内の別のファイルにある場合、その追加ファイルをメインのプラグインファイルに必ず含めてください。

  • 3:プラグインファイルに、アクティブ化後にプラグインを非アクティブにするタイプのエラーがないか。デバッグをtrueに設定しましたか。サイトのメンバーの1つには、wordpress.orgからダウンロードできるDebug Objectsという優れたデバッグプラグインがあります。

  • 4:ショートコードをテーマのfunctions.phpに移動して、ショートコードが実際に機能していることを確認してください。テーマ内で機能しない場合、問題は実際にはテーマ自体にある可能性があります

  • 5:@helgathevikingによって提案さthe_content()れているように、この動作を引き起こす可能性のある方法でをフィルタリングしていませんか?

  • 6:上記のすべてが失敗した場合は、すべてのプラグインを非アクティブ化し、バンドルされたテーマに切り替えて、再確認します。問題が解決しない場合は、Wordpressをアップグレード/再インストールします。これは、コアファイルが破損している可能性があるためです。


私はチェックリストを作成しました:1 =チェック!、2 =はい!、3 =いいえ、4 =大丈夫、5 =いいえ、6->うまくいきました!ローカルのwp(テスト用)を「シドニーのテーマ」から「Twenty Fourteen」に切り替えた後、SCが表示されます。SCが投稿に表示されないようにするテーマがあるようです。
Martin Pfeffer 2017年

このチェックリストを作成してくれたPieterに感謝します。ファイルを正しく含めていなかったことがわかりました。今は正常に動作します:)
チェスバイト

私は次のすべてを行いましたが、それでも機能しません。新しいWordPress(5.0.2)をインストールし、functions.phpファイルにコードを追加しました。しかし、[shortcodename]をページに配置すると、テキストとして扱われます。なにが問題ですか?デフォルトのテーマであるTwenty Sixteenを使用します。
HAL

これは非常に役立つチェックリストです。追加するのはセブンだけです。ページエディターが私のようなショートコードをジャッキアップしていないことを確認してください。 ]その「役立つ」WordBreakはしばらく私を台無しにしました。ありがとうページエディター...
ブライアンスティナー

-1

これを追加

    add_filter('the_content', 'do_shortcode');

1
どうして?これは何をしますか?彼らはこれをどこに追加しますか?してください編集使ってあなたの答えを編集上記のリンクをして、この問題を解決するのに役立ちます方法の詳細に追加します。
Howdy_McGee

-4

ご回答ありがとうございます。さらに調査したところ、ショートコードが定義されているプラ​​グインファイルが「非アクティブ」として表示されていました。ショートコード定義をアクティブなファイルに移動すると、すべてが機能し始めました。これが将来これに遭遇する人にとって役立つことを願っています。

再度、感謝します!


自分の代わりに正しい答えを受け入れてください。
チェスバイト
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.