2017-08-16 11 views
-1

単純なワードプレスショートコード関数は、URLからクエリーストリングのキー=>値のペアを取得し、その値をショートコードが置かれているページに出力します。ショートコードにパラメータを設定して、どのキーを呼び出すかを決定します。 [urlparam param = "username"]Wordpressカスタムショートコード - >パラメータがない場合は表示されません

残念ながら、クエリー・ストリングがない場合、またはクエリー・ストリング・キーが存在しない場合、結果をレンダリングするか、何も表示しないで、生ショートコードがページに表示されます。 クエリーストリングがない場合、または探しているキーがない場合、何も表示されないようにショートコード機能を編集するにはどうすればよいですか?

function urlparam_function($atts) { 
    extract(shortcode_atts(array(
     'param' => 'param', 
    ), $atts)); 
    return $_GET[$param]; 
} 
add_shortcode('urlparam', 'urlparam_function'); 

答えて

0

のみ$param以下のような$_GET使用を削除します。クエリ文字列のキーが空でない場合

function urlparam_function($atts) { 
    extract(shortcode_atts(array(
     'param' => 'param', 
    ), $atts)); 
    return $param; 
} 
add_shortcode('urlparam', 'urlparam_function'); 
+0

残念ながら、それは何の違いも見られませんでした。ここに元のソリューションがどこから来たのですか:https://wordpress.stackexchange.com/a/245635/90668 –

1

を、クエリ文字列値を返します。それ以外の場合はnullを返します。

nullを返すと、何も表示されません。

​​
+0

これが何をしているのか少し説明を追加できますか? – wally

+0

答えが更新されました。もう一度チェックしてください。このコードでは、クエリ文字列のキーが空でない場合はクエリ文字列の値を返し、そうでない場合はnullを返します。ショートコードからヌル値を返して何も表示しません。 –

関連する問題