搜尋

首頁  >  問答  >  主體

掛鉤到 Elementor 中的帖子小部件

我正在尋找一種方法來連接 Elementor Posts Widget,以便在每個貼文的貼文標題下顯示額外的 H2 標籤。

然後我將從單一貼文 ACF 欄位中取得此 H2 值。

從我讀到的其他內容來看,有一些方法可以將輸出的整個 HTML 作為字串獲取,但這需要大量的字串替換,因此不太適合未來。例如: 掛鉤到 elementor 小工具嗎? https://developers.elementor.com/docs/hooks/render-widget-content/

如果我使用這樣的程式碼,有沒有辦法將其掛在貼文標題後面?或者字串替換是解決這個問題的最佳方法?

function change_heading_widget_content( $widget_content, $widget ) {

if ( 'posts' === $widget->get_name() ) {
    $settings = $widget->get_settings();
    $post_id = "Somehow get the post id (maybe look for in the $widget_content string per post?)";

    if ( ! empty( $settings['link']['is_external'] ) ) {
        $widget_content .= '<h2>'. get_field("extra_heading", $post_id) .'<h2>';
    }
}

return $widget_content;

}
add_filter( 'elementor/widget/render_content', 'change_heading_widget_content', 10, 2 );

我感謝所有的幫助。 謝謝

P粉268654873P粉268654873356 天前707

全部回覆(1)我來回復

  • P粉706038741

    P粉7060387412023-12-14 09:25:51

    如果您深入研究 Elementor Pro 原始程式碼,您會發現一個很好的提示: 動態標籤 -> ACF 模組

    #
    get_queried_object()

    或試試這個: 動態標籤 -> ACF 模組渲染

    #
    function get_queried_object_meta( $meta_key ) {
            $value = '';
            if ( is_singular() ) {
                $value = get_post_meta( get_the_ID(), $meta_key, true );
            } elseif ( is_tax() || is_category() || is_tag() ) {
                $value = get_term_meta( get_queried_object_id(), $meta_key, true );
            }
    
            return $value;
        }

    或只使用 get_field('my-field') 而不使用 $post_id

    回覆
    0
  • 取消回覆