2016-03-22 25 views
-1

私は、WordPressの管理領域内のpost-new.phpセクションにフィールドを持っています。 最新バージョンのWordPressと、アドバンスドカスタムフィールドプラグインを使用して、このフィールドをheader.phpに書き出すことができます。
og:videoタグにはこのフィールドを使用していますので、安全なビデオURLを簡単に出力できます。
問題は、デフォルトのフィールド値がhttpsであるため、私はそれを思い出すことができるため、ビデオURLは常にhttpsで始まる必要があります。
公開ボタンをクリックすると、データベースはこの値を保存します。つまり、空白の状態のog secure urlはhttpsになります。たとえば
:私はFacebookのポストに空白のビデオをしたくないので

<meta property="og:video" content="https://www.neocsatblog.info/jwplayer/player.swf?file=https%3A%2F%2F&autostart=true&skinName=newtube&skinURL=https%3A%2F%2Fneocsatblog.info%2Fskinning-sdk%2Ffive%2Fnewtube%2Fnewtube.xml" /> 

これは、問題です。このように
、私は、ヘッダーに二つのことをチェックする必要があります。まず

  1. :フィールドが空の?
  2. 2番目:https://の後に文字列内に文字がありますか?

両方の条件が満たされている場合、コードはURLを出力する必要があります。
現在のPHPコード:

$video_url = get_field('video_url'); 
    if (isset($video_url)) { 
     $meta1='<meta property="og:video:type" content="application/x-shockwave-flash" />'; 
     $skinURL="https://neocsatblog.info/skinning-sdk/five/newtube/newtube.xml"; 
     $meta2=' <meta property="og:video" content="https://www.neocsatblog.info/jwplayer/player.swf?file='.urlencode($video_url).'&autostart=true&skinName=newtube&skinURL='.urlencode($skinURL).'" />'; 
     echo $meta1; 
     echo $meta2; 
    } 
+0

を試してみてください? 質問は私にとってはうまくいくようですが、@CBroeのおかげで – user3545446

答えて

0
if (isset($video_url) && $video_url !== "https://") { 
+0

私はまだ私のページにメタを得ています: http://www.neocsatblog.info/vallalkozast-szeretnel-de-meg-nem-multal-el-25/ – user3545446

+0

さて、あなたの質問では、デフォルトは "https"と言われましたが、それはそうではないようです。私は私の答えを修正しました。 – Chris

+0

私はその理由を知っています。 Becouse私は https:// のような正確な文字列を使用する必要があります。しかし、おかげで、あなたは私がオーバーフロー、良い点を助ける! – user3545446

1

私はvotedownを取得するのはなぜif ( (isset($video)) && (strpos($address, 'https://') == 0) && (strlen($address) > strlen('https://')) ) { // do stuff

+0

答えのThx、しかし@クリスsoulutionは今私のために働いています:) – user3545446

関連する問題