Cara membuat custom plugin wordpress




Cara membuat custom plugin wordpress

Banyak pengguna wordpress yang mungkin belum tau bagaimana membuat plugin sendiri dan simple hanya dengan menggunakan class post type.

Nah, berikut ini saya berikan contohnya bagaimana cara membuat custom plugin wordpress yang mudah dan cepat:

#Download class post type lewat link berikut download
#Buat folder dengan nama apa saja disini saya menggunakan folder contoh-plugin dengan susunan sebagai berikut
- folder inc
- folder post-type
- file faq.php
- file index.php

#kita edit file faq.php dengan isi sebagai berikut
<?php
/*
Plugin Name: FAQ
Plugin URI: http://cmsgue.id
Description: FAQ untuk uji coba pluin
Version: 1.0.5
Author: Gatot Setiawan
Email: gatot@cmsgue.id
Author URI: http://cmsgue.id
License: GPLv2
*/
defined('ABSPATH') or die('Do not access this file directly.');
require plugin_dir_path(__FILE__) . 'inc/class-columns.php';
require plugin_dir_path(__FILE__) . 'inc/class-posttype.php';
require plugin_dir_path(__FILE__) . 'inc/class-taxonomy.php';
require plugin_dir_path(__FILE__) . 'inc/class-taxfilter.php';
/**
 * Plugin activation
 */
function ujicoba_activate() {
flush_rewrite_rules();
}
register_activation_hook(__FILE__, 'ujicoba_activate');
function ujicoba_deactivation() {
flush_rewrite_rules();
delete_option('rewrite_rule');
}
register_deactivation_hook(__FILE__, 'ujicoba_deactivation');
require plugin_dir_path(__FILE__) . 'post-type/post-type.php';

#kemudian kita edit file post-type.php pada folder post-type
<?php
$widget_names = [
'name'                  => 'post_faq',
'menu_name'             => 'FAQ',
'singular'              => 'FAQ',
'plural'                => 'FAQ',
'all_items'             => 'All FAQ',
'slug'                  => 'faq',
];
// Define our options
$widget_options = [
'exclude_from_search' => false,
'hierarchical'        => false,
'menu_position'       => 20,
'has_archive'         => true,
'rewrite'             => ['with_front' => false],
'show_in_admin_bar'   => true,
'show_in_menu'        => true,
'show_in_nav_menus'   => true,
'show_in_rest'        => false,
'show_ui'             => true,
'supports'            => ['title', 'editor','page-attributes'],
];
// Create post type
$widget = new PostType($widget_names, $widget_options);
// Set the menu icon
$widget->icon('dashicons-star-filled');
// Set the title placeholder text
$widget->placeholder('Enter faq name');
// Hide admin columns
$widget->columns()->hide(['wpseo-score', 'wpseo-score-readability']);
// Define taxonomy names
$widget_type_names = [
'name'     => 'faq_kategori',
'singular' => 'FAQ Kategori',
'plural'   => 'FAQ Kategori',
'slug'     => 'faq-kategori',
];
// Define taxonomy options
$widget_type_options = [
'heirarchical'      => true,
'labels'            => ['menu_name' => 'FAQ Kategori'],
'show_admin_column' => true,
'show_in_nav_menus' => false,
'show_in_rest'      => true,
];
// Register taxonomy
$widget->taxonomy($widget_type_names, $widget_type_options);

#kita save dan kita zip  jika sudah selesai
#kemudian kita upload ke wordpress admin

untuk lebih jelasnya sobat bisa lihat pada video dibawah ini

semoga ini bisa bermanfaat.

Tags: