wake-up-neo.com

Anzahl der Seiten begrenzen, die eine bestimmte Vorlage verwenden?

Ich habe eine benutzerdefinierte Seitenvorlage, also eine .php-Datei in meinem Themenordner mit dieser am Anfang

/*
 * Template Name: MyTemplate
 */

Jetzt kann ich im Backend WP neue Seiten erstellen und diese Vorlage auswählen, sodass die erstellte Seite diese Vorlage verwendet.

Wie kann ich die Anzahl der Seiten mit dieser Vorlage begrenzen? Zum Beispiel, wenn ich mit dieser Vorlage nur eine einzige Seite zulassen möchte? Oder wenn es nur drei Seiten gibt, die es benutzen dürfen. Wie kann ich das erreichen?

3
Foo Bar

Sie können dies erreichen, indem Sie zunächst eine Datenbankabfrage verwenden, um die Anzahl der Seiten zu ermitteln, die die Vorlage bereits verwenden:

$query = "SELECT COUNT(*) as total
    FROM prefix_posts as p JOIN prefix_postmeta as m ON p.ID = m.post_id
    WHERE p.'post_type' = 'page'
    AND p.'post_status' = 'publish'
    AND m.'meta_key'    = '_wp_page_template'
    AND m.'meta_value'  = 'page-your-template-name.php'";

Überprüfen Sie anschließend, ob Ihr Zähllimit erreicht wurde, und entfernen Sie die Seitenvorlage mit dem Filter theme_page_templates :

3
Jami Gibbs