the_contentをremove_filterで元に戻したい

フォーラム 使い方全般 the_contentをremove_filterで元に戻したい

  • このトピックには4件の返信、2人の参加者があり、最後にpupurinにより10年、 11ヶ月前に更新されました。
5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • 投稿者
    投稿
  • #52676
    pupurin
    参加者

    動作に関するご質問の場合は必ずご記入ください。


    WordPress のバージョン:3.5.1

    Welcart のバージョン:1.3.1.1304012

    ご利用のテーマ:自作

    症状を確認したブラウザ:Firefox

    サーバー(会社名、サービス名):ローカル環境(xampp。構築は2013年4月に入ってからなので最新だと思います)

    SSLの利用: 無し

    WordPress のパーマリンク設定:デフォルト


    the_content()で自動的に表示される画像のサムネイルを非表示にするために、

    <?php the_content(); ?>

    の1行前に

    <?php remove_filter(‘the_content’,array($usces,’filter_cartContent’),20); ?>

    を記述しました。

    記述場所は、

    wp_content > themes > テーマフォルダ > wc_templates > wc_item_single.php

    のソース内です。

    細かい部分は省きますが、

    <?php if (have_posts()) : the_post(); ?>

    <?php usces_remove_filter(); ?>

    <?php usces_the_item(); ?>

    ~省略~

    <div class=”textBox”>

    <?php remove_filter(‘the_content’,array($usces,’filter_cartContent’),20); ?>

    <?php the_content(); ?>

    </div>

    <?php endif; ?>

    このような場所に記述しています。

    (省略している部分のほとんどは、デフォルトのwc_item_single.phpから引っ張ってきています。)

    ちなみに表示されているサムネイルは<div class=”loopimg”></div>で囲まれていました。

    #66570
    nanbu
    キーマスター

    こんにちは。

    wc_item_single.phpをご利用でしたら、商品画像を出力している部分は<div class="itemimg">で括られているところです。そこを削除すれば画像は消えます。

    #66571
    pupurin
    参加者

    <div class=”itemimg”> ~

    で始まる部分とは別に表示されてしまうのです。

    上記のタグで囲まれている部分を削除しても、

    <div class=”loopimg”> ~

    で囲まれている画像部分は表示されてしまいました。

    <div class=”textBox”>

    <?php remove_filter(‘the_content’,array($usces,’filter_cartContent’),20);

    ?>

    <?php the_content(); ?>

    </div><!– /.textBox –>

    というソースなのですが、出力される内容は、

    <div class=”textBox”>

     <div class=”loopimg”>

      

       画像名

      

     </div>

     <div class=”loopexp”>

    //本文

     </div>

    </div><!– /.textBox –>

    となってしまいます。

    <div class=”loopimg”>~で始まるタグ部分を表示したくないのですが、remove_filterのコードがおかしいのでしょうか?

    それとも、その前のループ関係が問題しているのでしょうか?

    #66572
    nanbu
    キーマスター

    商品詳細ページでしたらwc_templatesをご利用ください。remove_filterする必要がございません。

    #66573
    pupurin
    参加者

    解決しました。

    商品詳細ページに、商品を出力するループの前にもう一つ、商品一覧を出力するループを作成していたのですが(スライドです)、どうやらこれが原因でした。

    商品一覧を出力する自作関数内で下記記述が足りてなく、結果2つ目のループでサムネイルが表示されていたようです。

    (query_postsでメインループを変更し、wp_reset_query();でリセットしていたのですが…)

    usces_remove_filter();

    usces_the_item();

    これらを追記することでthe_content()でのサムネイル表示が無くなりました。

5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • このトピックに返信するにはログインが必要です。