Blog

Code Snippet: Oxygen Editor Hinweis

Version: 1.1.0 (17.04.2023)

Einführung

Oxygen ist ein mächtiges Plugin für WordPress, welches das WordPress Theme deaktiviert, die Erstellung eigener Templates mit einem visuellen Builder unterstützt, und damit ein ganz individuelles Design für die Website ermöglicht.

Auch Seite und Beiträge können mit dem Oxygen Builder gestaltet werden, statt mit dem Gutenberg Editor.

In der Administrations-Übersicht der Seiten und Beiträge ist leider nicht sofort erkennbar, ob eine Seite oder ein Beitrag mit Gutenberg oder mit Oxygen erstellt wurden.

Lösung

Ich habe ein Code Snippet entwickelt, das in den Administrations-Listen für Seiten und Beiträge anzeigt, ob Oxygen zur Gestaltung verwendet wurde.

Download

Das Code Snippet steht hier zum Download zur Verfügung:

ma-oxygen-editor-hint.code-snippets.json
Version 1.1.0, 2023-04-17

Zur Installation und Nutzung dieser JSON Datei wird das Plugin Code Snippets oder Advanced Scripts benötigt.
Dort kann diese JSON Datei mit der Funktion "Import" hochgeladen und anschließend aktiviert werden.

Alternativ: Am Ende dieser Seite kann der vollständige Source Code des Snippets eingesehen und kopiert werden.

Im Change Log sind neue Funktionalitäten und Fehlerbehebungen dokumentiert.

Spenden

Es macht mir viel Freude, Code Snippets zu entwickeln und damit Anforderungen zu lösen. Die Snippets stelle ich kostenfrei zur Verfügung.

Wenn Du möchtest, kannst Du meine vielen Stunden Arbeit mit einer kleinen Kaffee-Spende über PayPal honorieren.

  Bei Klick auf den Button wird eine Verbindung zu PayPal aufgebaut.

Spenden werden selbstverständlich ordnungsgemäß durch mich versteuert.

Disclaimer

Das Code Snippet habe ich nach bestem Wissen und Gewissen getestet mit

- WordPress 6.2
- Oxygen 4.5
- PHP 8.1

Ich stelle das Code Snippet zur freien Verwendung zur Verfügung.
Eine Garantie für die Funktionalität in allen denkbaren WordPress Umgebungen kann ich nicht geben. 
Download und Nutzung dieses Code Snippets erfolgen auf eigene Gefahr und Verantwortung.

Change Log

Siehe "Version History" in Source Code

Source Code

<?php
/*
Plugin Name:	MA Oxygen Editor Hint
Description:	Show hint "Oxygen" as editor in posts/pages list
Author:			<a href="https://www.altmann.de/">Matthias Altmann</a>
Project:		Code Snippet: Oxygen Editor Hint
Version:		1.1.0
Plugin URI:		https://www.altmann.de/en/blog-en/
Description:	en: https://www.altmann.de/en/blog-en/code-snippet-oxygen-editor-hint/
				de: https://www.altmann.de/blog/code-snippet-oxygen-editor-hinweis/
Copyright:		© 2021-2023, Matthias Altmann

Version History:
Date		Version		Description
--------------------------------------------------------------------------------------------------------------
2023-04-17	1.1.0		Moved call to init after the class definition for compatibility with WPCodeBox 2
						Tested with PHP 8.1, WordPress 6.2, Oxygen 4.5, Code Snippets 3.3.0, WPCodeBox 2.0.0b3.0
2022-02-11				Tested with PHP 8.0, WordPress 5.9, Oxygen 4.0 beta 1
2021-05-16	1.0.0		Initial release as Code Snippet
						Tested with PHP 7.4, WordPress 5.7.2, Oxygen 3.7.1
--------------------------------------------------------------------------------------------------------------
*/


class MA_OxygenPostState {
	// ===== CONFIGURATION =====
	private static $post_types 		= ['post','page']; 	// post types to show new column "Editor" in posts list


	//-------------------------------------------------------------------------------------------------------------------
	public static function init() {
		foreach (self::$post_types as $post_type) {
			add_filter( 'display_post_states', array( __CLASS__, 'ma_editorcolumn_add_post_state' ), 1000, 2 );
		}
	}
	//-------------------------------------------------------------------------------------------------------------------
	public static function ma_editorcolumn_add_post_state($post_states, $post) {
		// Fix PHP 7+ warnings if another plugin returns unexpected type.
		$post_states = (array) $post_states;
		$post_meta = get_post_meta($post->ID,'',true);
		if (isset($post_meta['ct_builder_shortcodes']) && (trim(@$post_meta['ct_builder_shortcodes'][0]) != ''))  {
			// remove mis-leading editor hints from plugin "Classic Editor"
			unset($post_states['classic-editor-plugin']);
			// add "Oxygen" as editor hint
			$post_states['ma_editorcolumn'] = 'Oxygen';
		}
		return $post_states;
	}
}
if (is_admin() && !wp_doing_ajax() && !wp_doing_cron() ) {
	MA_OxygenPostState::init();
}
Erstveröffentlichung: 16.05.2021 auf Code Snippet: Oxygen Editor Hinweis
magnifier