web-dev-qa-db-ja.com

ページを読み込む前に特定のページのURLに値を追加する

この特定のWebサイトは、YouTubeビデオギャラリーを表示するためにTubepressを使用しています。さて、Tubepressは、どのビデオをギャラリーの前面に表示するかを定義するために、次のようにURLにidを追加することをお勧めします。

http://mysite.com/videos.php?tubepress_video=somevideoid

そのため、動画ページのデフォルトの動画IDを格納したオプションが既にありますが、動画ページが読み込まれるたびにその値をURLに動的に追加するのに問題が生じます。

これまでのところ、私は運なしでURL Rewritesを試してみました、そして、私はこれを見つけました: カスタムURlパラメータ そしてそれは私がまさに欲しいもののようです。 page_linkフィルタフックもあると思いましたが、それに関するドキュメントはありません。それで、これはまだうまくいっていません、そして、私はなぜかよくわかりません。

私の実際のコードはこのようになります:

function append_parameter( $link, $my_parameter ) {

    if(is_page('videos')) {
        $my_parameter = get_option('featured_video_id');

        if ( isset($my_parameter) ) { 
            $link = add_query_arg( 'tubepress_video', $my_parameter );
        }
        return $link;
        }
    }
add_filter( 'page_link','append_parameter', 10, 2 );

何か案は?

1
moraleida

この例では、これをパラメータの追加方法としてリンクしています。

add_query_arg( 'sort'、$ my_parameter、$ link);

ただし、この例ではlinkパラメータを見逃しています。

あなたがそれを置き換えるとそれは動作しますか?

$ link = add_query_arg( 'tubepress_video'、$ my_parameter、$ link);

1
tim