mikonoru
Verfasste Forenbeiträge
Ansicht von 5 Antworten – 1 bis 5 (von insgesamt 5)
-
Forum: Plugins
Als Antwort auf: Plugin Posttype Metabox Remove<?php
// Beenden, wenn direkt aufgerufen
if (!defined('ABSPATH')) {
die(-1); // Exit if accessed directly.
}
class OpeningHoursPostType
{
/**
* @var string $slug Der Slug für den benutzerdefinierten Post-Typ
*/
private $slug = 'opening_hours';
/**
* @var string $typeTax Der Slug für die Taxonomie "Typ"
*/
private $typeTax = OPENING_TYPE;
/**
* @var string $locationTax Der Slug für die Taxonomie "Standort"
*/
private $locationTax = 'location';
/**
* @var array $postTypeLabel Die Labels für den benutzerdefinierten Post-Typ
*/
private $postTypeLabel;
/**
* @var array $taxLabel Die Labels für die Taxonomie "Typ"
*/
private $taxLabel;
/**
* @var array $locationLabel Die Labels für die Taxonomie "Standort"
*/
private $locationLabel;
/**
* Singleton-Instanz
* @var self
*/
protected static $instance;
/**
* Stellt sicher, dass nur eine Instanz der Klasse existiert (Singleton-Pattern)
*
* @return self
*/
public static function instance()
{
if (!self::$instance) {
self::$instance = new self;
}
return self::$instance;
}
/**
* Konstruktor
* Initialisiert die Slugs und Labels für den Post-Typ und die Taxonomien
*/
public function __construct()
{
$this->postTypeLabel = array(
'name' => __('Öffnungszeiten', 'plugin'),
'singular_name' => __('Öffnungszeit', 'plugin'),
'edit_item' => __('Öffnungszeit bearbeiten', 'plugin')
);
$this->taxLabel = array(
'name' => __('Öffnungszeiten Typen', 'plugin'),
'singular_name' => __('Öffnungszeiten Typ', 'plugin')
);
$this->locationLabel = array(
'name' => __('Standorte', 'plugin'),
'singular_name' => __('Standort', 'plugin')
);
}
/**
* Registriert den benutzerdefinierten Post-Typ
*/
public function register_posttype()
{
$args = array(
'labels' => $this->postTypeLabel,
'public' => true,
'has_archive' => true,
'show_in_menu' => false,
'show_in_rest' => true, // Sichtbar in der REST API
'publicly_queryable' => true,
'menu_icon' => 'dashicons-clock',
'supports' => array('title', 'editor', 'author', 'excerpt'),
);
register_post_type($this->slug, $args);
}
/**
* Registriert die benutzerdefinierten Taxonomien
*/
public function register_taxonomy()
{
$args = array(
'labels' => $this->taxLabel,
'public' => true,
'hierarchical' => true,
// 'show_ui' => false,
'show_in_rest' => true,
);
register_taxonomy($this->typeTax, $this->slug, $args);
$location_args = array(
'labels' => $this->locationLabel,
'public' => true,
'hierarchical' => true,
// 'show_ui' => false,
'show_in_rest' => true,
);
register_taxonomy($this->locationTax, $this->slug, $location_args);
}
/**
* Fügt die Aktionen zum Registrieren des Post-Typs und der Taxonomien hinzu
*/
public function register()
{
add_action('init', array($this, 'register_posttype'));
add_action('init', array($this, 'register_taxonomy'));
add_action('admin_menu', array($this, 'add_main_menu'));
}
/**
* Fügt das Hauptmenü und die Untermenüs im Admin-Bereich hinzu
*/
public function add_main_menu()
{
// Fügt das Submenü für Öffnungszeiten hinzu
add_submenu_page(
'wp_menu',
__('Öffnungszeiten', 'plugin'),
__('Öffnungszeiten', 'plugin'),
'manage_options',
'edit.php?post_type=' . $this->slug
);
// Fügt das Submenü für Öffnungszeiten Typen hinzu
add_submenu_page(
'wp_menu',
__('Öffnungszeiten Typen', 'plugin'),
__('Öffnungszeiten Typen', 'plugin'),
'manage_options',
'edit-tags.php?taxonomy=' . $this->typeTax . '&post_type=' . $this->slug
);
// Fügt das Submenü für Standorte hinzu
add_submenu_page(
'wp_menu',
__('Standorte', 'plugin'),
__('Standorte', 'plugin'),
'manage_options',
'edit-tags.php?taxonomy=' . $this->locationTax . '&post_type=' . $this->slug
);
}
}
// Erstelle eine Instanz der OpeningHoursPostType-Klasse und registriere den Post-Typ und die Taxonomien
$openingHoursPostType = OpeningHoursPostType::instance();
$openingHoursPostType->register();
?>Forum: Plugins
Als Antwort auf: Plugin Posttype Metabox RemoveForum: Plugins
Als Antwort auf: Plugin Posttype Metabox RemoveAlso ich würde ja n Bild Hochladen, aber es funktioniert leider nicht. 🙂
Forum: Plugins
Als Antwort auf: Plugin Posttype Metabox Remove„Öffnungszeiten Typen“ sowie „Standorte“ ist der automatisch erstelle von WordPress wenn man Kategorien Registriert
das „Standort und Typ auswählen“ ist meine eigene Metabox wo beides als Dropdown ausgewählt werden kann.
die ersten beiden die Standard mäßig erzeugt werden sind überflüssig und nicht notwendig.- Diese Antwort wurde vor 6 Monaten, 4 Wochen von mikonoru geändert.
Forum: Plugins
Als Antwort auf: Plugin Posttype Metabox RemoveEs sind Tatsächlich Zwei Kategorie-Bereiche die ich Hinzufüge. Einmal ein Typ und einmal eine Location.
zum wo es besser aufgehoben wäre:
kann ich das hier verschieben? oder ist das eine Komplett eigene Seite? 😀- Diese Antwort wurde vor 6 Monaten, 4 Wochen von mikonoru geändert.
Ansicht von 5 Antworten – 1 bis 5 (von insgesamt 5)