0

ショートコードを含む最初の Wordpress プラグインを作成しようとしていますが、うまく動作しないようです。ショートコード [first] を入力すると、投稿/ページに HTML で書かれているにもかかわらず、「[first]」と表示されます。私は何が欠けていますか?

 <?php
 /*
 * Plugin Name: WordPress ShortCode
* Description: Create your WordPress shortcode.
* Version:
* Author:
 * Author URI:
*/

 function wp_first_shortcode(){
  echo "Hello World";
 }

add_shortcode(‘first’, ‘wp_first_shortcode’);
 ?>

エラーはありません。ショートコードが正しく表示されていないだけです。

4

1 に答える 1

1

returnしないでくださいechoadd_shortcode() ドキュメントから:

ショートコードによって呼び出される関数は、いかなる種類の出力も生成しないことに注意してください。ショートコード関数は、ショートコードを置き換えるために使用されるテキストを返す必要があります。出力を直接生成すると、予期しない結果が発生します。これは、フィルター関数が呼び出されるタイミングと場所を制御できないため、呼び出しから予想される副作用を生成しないという点で、フィルター関数の動作方法に似ています。

そう:

function wp_first_shortcode(){
  return "Hello World";
}

また、コードで中引用符を使用しないでください。これまで。add_shortcode(‘first’, ‘wp_first_shortcode’);に変更add_shortcode('first', 'wp_first_shortcode');

https://developer.wordpress.org/plugins/shortcodes/basic-shortcodes/も参照してください。

于 2019-05-20T21:04:46.047 に答える