Seitenbasis /page/ für Permalinks anpassen

WordPress kann man zwar mit Sprachdateien bestücken, allerdings kann und wird nicht alles übersetzt.
So bleiben zum Beispiel die Permalinks meistens noch in Englisch. So auch der Slug für die Seitennavigation: example.de/page/2.
WordPress wäre aber nicht WordPress, wenn es da nicht auch eine Möglichkeit gäbe, dies zu ändern.
Folgender Schnipsel für die functions.php zeigt dies.

PHP / RAW / github:gist
<?php
/**
 * Setzt die Seitenbasis für die Permalinkgenerierung auf /seite/ (Standard: /page/).
 *
 * @author Dominik Schilling
 * @license GPLv2
 * @link https://dominikschilling.de/141/
 *
 * @version 0.1
 */
function ds_set_pagination_base() {
 	global $wp_rewrite;

	$wp_rewrite->pagination_base = 'seite';
}

add_action( 'init', 'ds_set_pagination_base' );

Diese Änderung kann übrigens auch für die Basen $author_base, $search_base, $comments_base und $feed_base übernommen werden, siehe dazu auch /wp-includes/rewrite.php.

Hinweis

Mit dieser Funktion wird erstmal nur die Basis für die Permalinkgenerierung geändert. Das heißt die Permalinks müssen jetzt noch generiert werden.
Dazu einmal die Seite /wp-admin/options-permalink.php im Browser deiner Wahl öffnen und gegebenfalls den Änderungen übernehmen Button klicken.

Zuordnung einer Taxonomy zu einem Post Type prüfen

Man befindet sich in einem Taxonomy Archiv eines bestimmten Post Type und möchte gerne in der archive.php einen passenden Titel ausgeben.

Beispiel:
Es existieren die Taxonomien Version und Schwierigkeitsgrad welche dem Post Type Schnipsel zugeordnet sind.
Für beide Archive soll der Titel Schnipsel Archiv ausgeben werden.

Um dies zu realisieren wird folgende Funktion für die functions.php benötigt.

PHP / RAW / github:gist
<?php
/**
 * Prüft, ob eine gegebene oder aktuell nachgefragte Taxonomy einem gegebenen Post Type zugeordnet ist.
 *
 * @author Dominik Schilling
 * @license GPLv2
 * @link https://dominikschilling.de/137/
 *
 * @version 0.1 
 * @param object|string $post_type
 * @param string $taxonomy Optional. Standardwert ist null.
 * @return bool True wenn Taxonomy dem Post Type zugeordnet ist, false wenn nicht und bei fehlerhafter Eingabe.
 */
function ds_is_taxonomy_assigned_to_post_type( $post_type, $taxonomy = null ) {	
	if ( is_object( $post_type ) )
		$post_type = $post_type->post_type;

	if ( empty( $post_type ) )
		return false;

	$taxonomies = get_object_taxonomies( $post_type );

	if ( empty( $taxonomy ) )
		$taxonomy = get_query_var( 'taxonomy' );

	return in_array( $taxonomy, $taxonomies );
}

Nachdem diese Funktion implementiert ist, kann mit Hilfe dieses Schnipsels die Zugehörigkeit überprüft und entsprechend reagiert werden.

PHP / RAW / github:gist
<?php
if ( ds_is_taxonomy_assigned_to_post_type( 'schnipsel' ) )
	echo '<h3>Schnipsel Archiv</h3>';
else
	echo '<h3>Archiv</h3>';