WordPress-Plugin entwickeln (HowTo): Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| (14 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) | |||
| Zeile 16: | Zeile 16: | ||
* danach ist das Plugin im WordPress Backend unter Plugins sichtbar | * danach ist das Plugin im WordPress Backend unter Plugins sichtbar | ||
== Schritt | == Schritt 3: ggf. Custom Post Types registrieren == | ||
[[WordPress Custom Post Types registrieren (HowTo)]] | |||
== Schritt 4: Plugin-Menü anlegen oder erweitern == | |||
=== 4a) Struktur für eigenes Plugin-Menü anlegen === | |||
==== Plugin-Unterseiten anlegen ==== | |||
* in "wp-content/plugins/my-plugin" einen Ordner "views" anlegen | |||
* im Ordner views drei PHP-Dateien anlegen, z. B.: | |||
** all-custom-post-types.php | |||
** usage.php | |||
** settings.php | |||
<pre> | |||
<?php | |||
defined( 'ABSPATH' ) or die(); | |||
?> | |||
<h2>Alle Custom Posts</h2> | |||
<div> | |||
<p>Das scheint zu funktionieren!</p> | |||
</div> | |||
</pre> | |||
==== Plugin Menü im Backend anzeigen ==== | |||
* in der Datei "wp-content/plugins/my-plugin.php" Menüstruktur anlegen | |||
<pre> | |||
function my_plugin_test_admin_menu_option() { | |||
add_menu_page( | |||
'My Plugin', | |||
'My Plugin', | |||
'manage_options', | |||
'my-plugin-test-admin-menu', | |||
function() {}, | |||
'dashicons-location-alt', | |||
3 ); | |||
add_submenu_page( | |||
'my-plugin-test-admin-menu', | |||
'Alle Datensätze', | |||
'Alle Datensätze', | |||
'manage_options', | |||
'my-plugin-test-admin-menu', | |||
function() { | |||
include 'views/all-custom-post-types.php'; | |||
}); | |||
add_submenu_page( | |||
'my-plugin-test-admin-menu', | |||
'Nutzungshinweise', | |||
'Nutzungshinweise', | |||
'manage_options', | |||
'project_usage_page', | |||
function() { | |||
include 'views/usage.php'; | |||
}); | |||
add_submenu_page( | |||
'my-plugin-test-admin-menu', | |||
'Einstellungen', | |||
'Einstellungen', | |||
'manage_options', | |||
'project_settings_page', | |||
function() { | |||
include 'views/settings.php'; | |||
}); | |||
} | |||
add_action( 'admin_menu', 'my_plugin_test_admin_menu_option' ); | |||
</pre> | |||
=== 4b) Bestehendes Menü erweitern === | |||
==== in bestehenden WordPress Modulen integrieren ==== | |||
* "show_in_menu"-Argument in $args-Array (Voraussetzung: "show_ui" muss Wert "true" haben) | |||
** ‘false’ – do not display in the admin menu | |||
** ‘true’ – display as a top level menu | |||
** ‘some string’ für eine existierende Top Level Page, z.B. | |||
*** ‘tools.php’ für Werkzeuge-Menü | |||
*** ‘edit.php?’ für Beiträge-Menü | |||
*** ‘edit.php?post_type=page’ für Seiten-Menü | |||
==== in bestehenden Custom Post Type integrieren ==== | |||
<pre> | <pre> | ||
/** | |||
* Menü um zwei Unterpunkte erweitern | |||
*/ | |||
function product_admin_menu_option() { | |||
add_submenu_page( | |||
'edit.php?post_type=product', | |||
'Nutzungshinweise', | |||
'Nutzungshinweise', | |||
'manage_options', | |||
'product-usage-page', | |||
'product_usage_page_callback' | |||
); | |||
add_submenu_page( | |||
'edit.php?post_type=product', | |||
'Optionen', | |||
'Optionen', | |||
'manage_options', | |||
'product-options-page', | |||
'product_options_page_callback' | |||
); | |||
} | |||
function product_usage_page_callback() { | |||
include 'views/usage.php'; | |||
} | |||
function product_options_page_callback() { | |||
include 'views/settings.php'; | |||
} | |||
</pre> | </pre> | ||
https://wordpress.org/support/topic/custom-post-types-in-admin-menu/ | |||
== Schritt 4: Templates entwickeln == | |||
[[WordPress Templates entwickeln (HowTo)]] | |||
= Quellen = | |||
==Einstieg in die Plugin Entwicklung== | |||
Shortcodes | |||
* https://studentenwebdesign.de/wordpress-plugin-erstellen-tutorial/ | |||
* https://kinsta.com/de/blog/wordpress-shortcodes/ | |||
* http://www.tipps.1st-tec.de/wordpress/39-wordpress/120-shortcode-in-wordpress.html | |||
* http://liamghilardi.net/tutorial-ein-eigenes-wordpress-plugin-programmieren/ | |||
* https://361.de/blog/1041-einstieg-in-die-wordpress-plugin-entwicklung-teil-1.html | |||
* https://scotch.io/tutorials/how-to-build-a-wordpress-plugin-part-1 | |||
* http://t3n.de/magazin/plugin-entwicklung-wordpress-einfach-selber-229590/2/ | |||
Video | |||
* https://www.youtube.com/watch?v=xQNhRS8zHPs | |||
==Eigene Datenbank== | |||
* http://www.blackzet.com/eigene-datenbank-tabellen-wordpress/ | |||
Video | |||
* https://www.youtube.com/watch?v=4IwNiCgM6lU | |||
==Tabellen im WordPressstyle== | |||
* http://www.sitepoint.com/using-wp_list_table-to-create-wordpress-admin-tables/ | |||
* http://wpengineer.com/2426/wp_list_table-a-step-by-step-guide/ | |||
[[Kategorie:WordPress]] | [[Kategorie:WordPress]] | ||
Aktuelle Version vom 1. September 2021, 15:03 Uhr
Arbeitsschritte[Bearbeiten]
Schritt 1: Plugin anlegen[Bearbeiten]
- unter "wp-content/plugins/" einen Ordner mit dem Namen des Plugins anlegen, z. B. "my-plugin"
- im Ordner eine php-Datei anlegen, z. B. "my-plugin.php"
<?php /** *Plugin Name: My Plugin *Description: Management/Display Plugin for Projects. **/
- danach ist das Plugin im WordPress Backend unter Plugins sichtbar
Schritt 3: ggf. Custom Post Types registrieren[Bearbeiten]
WordPress Custom Post Types registrieren (HowTo)
Schritt 4: Plugin-Menü anlegen oder erweitern[Bearbeiten]
4a) Struktur für eigenes Plugin-Menü anlegen[Bearbeiten]
Plugin-Unterseiten anlegen[Bearbeiten]
- in "wp-content/plugins/my-plugin" einen Ordner "views" anlegen
- im Ordner views drei PHP-Dateien anlegen, z. B.:
- all-custom-post-types.php
- usage.php
- settings.php
<?php
defined( 'ABSPATH' ) or die();
?>
<h2>Alle Custom Posts</h2>
<div>
<p>Das scheint zu funktionieren!</p>
</div>
Plugin Menü im Backend anzeigen[Bearbeiten]
- in der Datei "wp-content/plugins/my-plugin.php" Menüstruktur anlegen
function my_plugin_test_admin_menu_option() {
add_menu_page(
'My Plugin',
'My Plugin',
'manage_options',
'my-plugin-test-admin-menu',
function() {},
'dashicons-location-alt',
3 );
add_submenu_page(
'my-plugin-test-admin-menu',
'Alle Datensätze',
'Alle Datensätze',
'manage_options',
'my-plugin-test-admin-menu',
function() {
include 'views/all-custom-post-types.php';
});
add_submenu_page(
'my-plugin-test-admin-menu',
'Nutzungshinweise',
'Nutzungshinweise',
'manage_options',
'project_usage_page',
function() {
include 'views/usage.php';
});
add_submenu_page(
'my-plugin-test-admin-menu',
'Einstellungen',
'Einstellungen',
'manage_options',
'project_settings_page',
function() {
include 'views/settings.php';
});
}
add_action( 'admin_menu', 'my_plugin_test_admin_menu_option' );
4b) Bestehendes Menü erweitern[Bearbeiten]
in bestehenden WordPress Modulen integrieren[Bearbeiten]
- "show_in_menu"-Argument in $args-Array (Voraussetzung: "show_ui" muss Wert "true" haben)
- ‘false’ – do not display in the admin menu
- ‘true’ – display as a top level menu
- ‘some string’ für eine existierende Top Level Page, z.B.
- ‘tools.php’ für Werkzeuge-Menü
- ‘edit.php?’ für Beiträge-Menü
- ‘edit.php?post_type=page’ für Seiten-Menü
in bestehenden Custom Post Type integrieren[Bearbeiten]
/**
* Menü um zwei Unterpunkte erweitern
*/
function product_admin_menu_option() {
add_submenu_page(
'edit.php?post_type=product',
'Nutzungshinweise',
'Nutzungshinweise',
'manage_options',
'product-usage-page',
'product_usage_page_callback'
);
add_submenu_page(
'edit.php?post_type=product',
'Optionen',
'Optionen',
'manage_options',
'product-options-page',
'product_options_page_callback'
);
}
function product_usage_page_callback() {
include 'views/usage.php';
}
function product_options_page_callback() {
include 'views/settings.php';
}
https://wordpress.org/support/topic/custom-post-types-in-admin-menu/
Schritt 4: Templates entwickeln[Bearbeiten]
WordPress Templates entwickeln (HowTo)
Quellen[Bearbeiten]
Einstieg in die Plugin Entwicklung[Bearbeiten]
Shortcodes
- https://studentenwebdesign.de/wordpress-plugin-erstellen-tutorial/
- https://kinsta.com/de/blog/wordpress-shortcodes/
- http://www.tipps.1st-tec.de/wordpress/39-wordpress/120-shortcode-in-wordpress.html
- http://liamghilardi.net/tutorial-ein-eigenes-wordpress-plugin-programmieren/
- https://361.de/blog/1041-einstieg-in-die-wordpress-plugin-entwicklung-teil-1.html
- https://scotch.io/tutorials/how-to-build-a-wordpress-plugin-part-1
- http://t3n.de/magazin/plugin-entwicklung-wordpress-einfach-selber-229590/2/
Video
Eigene Datenbank[Bearbeiten]
Video