WordPress-Plugin entwickeln (HowTo): Unterschied zwischen den Versionen

Aus wiki.sehanka.de
Zur Navigation springen Zur Suche springen
 
(6 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 2: Struktur für Plugin-Menü anlegen ==
== 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 ====


=== Plugin-Unterseiten anlegen ===
* in "wp-content/plugins/my-plugin" einen Ordner "views" anlegen
* in "wp-content/plugins/my-plugin" einen Ordner "views" anlegen
* im Ordner views drei PHP-Dateien anlegen, z. B.:
* im Ordner views drei PHP-Dateien anlegen, z. B.:
Zeile 37: Zeile 44:
</pre>
</pre>


=== Plugin mit Untermenü unter WordPress-Modulen anzeigen ===
==== Plugin Menü im Backend anzeigen ====


* in der Datei "wp-content/plugins/my-plugin.php" Menüstruktur anlegen
* in der Datei "wp-content/plugins/my-plugin.php" Menüstruktur anlegen
Zeile 87: Zeile 94:
</pre>
</pre>


== Schritt 3: Custom Post Types registrieren ==
=== 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>
/**
* 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'
    );
 
}


[[WordPress Custom Post Types registrieren (HowTo)]]
function product_usage_page_callback() {
    include 'views/usage.php';
}
 
function product_options_page_callback() {
    include 'views/settings.php';
}
</pre>
 
https://wordpress.org/support/topic/custom-post-types-in-admin-menu/


== Schritt 4: Templates entwickeln ==
== Schritt 4: Templates entwickeln ==


[[WordPress Templates entwickeln (HowTo)]]
[[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

Video

Eigene Datenbank[Bearbeiten]

Video


Tabellen im WordPressstyle[Bearbeiten]