2

簡単な Wordpress ショートコードを作成して、ライターが投稿のビジュアル エディターで字幕のスタイルを簡単に設定できるようにしました。

function subtitle( $atts, $content = null ) {
    return '<p class="subtitle">' . $content . '</p>';
}

この出力を、ドキュメント内の指定された別の場所に移動したいと考えています。例:

<div id="output_here_please"></div>

<?php the_content(); /* It is returned here wherever they place the shortcode */ ?>

これを行う最善の方法は何ですか?使用するPHPまたはWordPress関数はありますか、またはinnerHTMLを置き換えるためにjavascriptを作成する必要があります(これを試しましたが、ページが読み込まれた後に挿入する方法がわかりませんでした)。

ありがとう

4

2 に答える 2

0

それを行うための迅速で汚い方法は、グローバル変数を宣言することです-たとえば、それを使用して、他の場所$subtitle_contentに表示したいhtmlフラグメントを一時的に保存します。

function subtitle( $atts, $content = null ) {
    $GLOBALS["subtitle_content"] = '<p class="subtitle">' . $content . '</p>';
    return "";
}

function the_content(){
    echo $GLOBALS["subtitle_content"];
    /* unset $GLOBALS["subtitle_content"]; */
}

上記のコメントアウトされたコードで記述されているように、不要になったらその変数の定義を解除することをお勧めします。

$GLOBALあなたの情報のためのドキュメント。

ノート:

  • 他の関数との名前の衝突を避けるために、関数にはより具体的な名前を使用することをお勧めします(ただし、これが発生した場合、PHPは突然通知します)。
  • そのためにjavascriptを使用しないでください。これは厳密にサーバーサイドの料理です。
于 2013-02-15T02:41:26.933 に答える
0

関数がそのようなサブタイトルと呼ばれる場合、次のように挿入できます。

<div id="output_here_please">
  <?php subtitle("value", "This is some sample content"); ?>
</div>
于 2013-02-15T02:24:12.530 に答える