Lesefortschritt:

Standard-Registerkarte im filterbaren Portfolio-Modul ändern

22. Januar 2025 | Divi-Theme, functions.php

Trick # 423 | Dieser Beitrag beinhaltet 454 Wörter. – Geschätzte Lesezeit: ca. 3 Minuten.

Das Divi-Theme verfügt über ein filterbares Portfoliomodul, mit dem Sie eine Liste von Projekten nach Kategorien filtern können. Standardmässig werden zunächst alle Kategorien angezeigt. Wenn Sie stattdessen eine bestimmte Kategorie als Standard festlegen möchten, dürfte Sie dieser Hack interessieren.

Der folgende PHP-Code kann verwendet werden, um eine bestimmte Kategorie als Standard festzulegen, die beim ersten Laden des Portfolios angezeigt werden soll. Kopieren Sie den Code in die Datei functions.php, welche Sie im Backend unter Design/Theme-Editor bearbeiten können:

$feature = new Default_Portfolio_Tab('IHRE-KATEGORIE-SLUG');
$feature->init();

class Default_Portfolio_Tab {

    private $slug;

    public function __construct($category_slug) {
        $this->slug = $category_slug;
    }

    public function init() {
        add_filter('et_pb_filterable_portfolio_shortcode_output', array($this, 'dbc_set_default_portfolio_tab'));
        add_action('wp_head', array($this, 'dbc_default_portfolio_tab_css'));
    }

    function dbc_set_default_portfolio_tab($output) {
        $output = str_replace(
            'class="active" data-category-slug="all"', 
            'data-category-slug="all"', 
            $output
        );
        $output = str_replace(
            'data-category-slug="'.esc_attr($this->slug).'"', 
            'data-category-slug="'.esc_attr($this->slug).'" class="active"', 
            $output
        );
        return $output;
    }
    
    function default_portfolio_tab_css() {
        ?>
        <style>
            .et_pb_portfolio_filter_all {
                display: none !important;
            }
            .et_pb_portfolio_item:not(.project_category-<?php esc_html_e($this->slug); ?>) {
                display: none;
            }
        </style>
        <?php
    }
}

Der einzige Teil, den Sie ändern müssen, ist die erste Zeile, die den Slug der Kategorie angibt, die standardmässig angezeigt werden soll. In diesem Beispiel habeen wir „IHRE-KATEGORIE-SLUG“ verwendet, aber Sie sollten diesen Platzhalter natürlich mit einem Ihrer eigenen Kategorie-Slugs ersetzen.

Nicht unwichtig:

  • Die Kategorie «Alle» wird mit diesem Code aus der Liste der Registerkarten entfernt.
  • In seiner jetzigen Form wirkt sich der Code auf ALLE Portfolios einer Website aus, so dass er sich am ehesten für Situationen eignet, in denen bloss ein einziges Portfolio verwendet wird.

Werbung

Werbung

 

Pin It on Pinterest

Share This