0

誰かが私を助けてくれることを願っています。WordPress 内で単純な if ステートメントを書いていますが、何らかの理由で希望どおりに実行されないようです。

    $g_map = get_the_id().(get_post_meta($post->ID, '_et_business_g_pagetype', true));
if ('map' == $g_map) {
    echo "<h1>This is the map page</h1>".$g_map;
    }

if ステートメントは、Custom Post Meta Field = map の場合に実行されます

if ステートメントの外でこの行を実行するecho get_the_id().(get_post_meta($post->ID, '_et_business_g_pagetype', true));と、値が"map"

したがって、「マップはマップと等しい必要があります」とエコーが意図したとおりに実行されるはずですが、そうでない理由がわかりません...

なぜこれが起こっているのか、どうすれば修正できるのかについてのアイデアをいただければ幸いです。

4

2 に答える 2

0

get_the_id() を配置して、正しい投稿があるかどうかを確認しました! - 実際、map は map と等しくありませんでした...これは map = (postnumber)map であり、これが if ステートメントが機能しなかった理由です! - 私を正しい方向に向けてくれてありがとう!今解決しました!

于 2013-07-25T15:43:41.197 に答える
0

var_dump($_map); を実行します。ケースの問題である可能性があるか、マップを返さないかを確認します。ああ、リファクタリングして少し改善したい場合は === を使用すると、型キャストされませんが、文字列なので大きな違いはありません。

于 2013-07-04T16:14:39.660 に答える