Customizing WordPress - Ioannis Karavas Software Engineer
by
WordPress Greek Community
×
Copy
Open
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Customizing WordPress Customizing WordPress Ioannis Karavas Software Engineer
Slide 2
Slide 2 text
Music Industry E-commerce Organizations Who uses WordPress?
Slide 3
Slide 3 text
WordPress is customizable WordPress is customizable
Slide 4
Slide 4 text
Filters Filters
Slide 5
Slide 5 text
Filters Filters function gimme_browser($classes) { global $is_IE, $is_opera, $is_chrome, $is_iphone; if ($is_chrome) $classes[] = 'chrome'; elseif ($is_opera) $classes[] = 'opera'; ... return $classes; }
Slide 6
Slide 6 text
Actions Actions
Slide 7
Slide 7 text
Actions Actions add_action( 'user_register', 'handle_new_user' ); function handle_new_user($user_id) { $user_info = ... $new_post = array( 'post_name' => $user_name, ... 'post_excerpt' => '...', 'post_content' => 'Prompt user...' ); wp_insert_post( $new_post, $wp_error ); }
Slide 8
Slide 8 text
Child Themes Child Themes
Slide 9
Slide 9 text
Child Themes Child Themes function child_styles() { wp_enqueue_style( 'parent-style', get_template_directory_uri().'/style.css'); } add_action( 'wp_enqueue_scripts', 'child_styles' ); functions.php is not overwritten!
Slide 10
Slide 10 text
Roles & Capabilities Roles & Capabilities
Slide 11
Slide 11 text
Roles & Capabilities Roles & Capabilities function restrict_editor() { $editorRole = get_role( 'editor' ); $capabilities = array( 'edit_others_posts', ... ); foreach ( $capabilities as $capability ) { $editorRole->remove_cap( $capability ); } } add_action( 'init', 'restrict_editor' );
Slide 12
Slide 12 text
add_action( 'init', 'add_new_role' ); function add_new_role() { add_role( 'junior', __('Junior'), array( 'read' => true, 'edit_posts' => true, 'delete_posts' => false, ) ); } Roles & Capabilities Roles & Capabilities
Slide 13
Slide 13 text
Custom Post Types Custom Post Types
Slide 14
Slide 14 text
Custom Post Types Custom Post Types add_action( 'init', 'create_custom_post_type' ); function create_custom_post_type() { register_post_type('projects', array( 'labels' => array( 'name' => __('Projects'), 'singular_name' => __('Projects'), ) ... ) ); }
Slide 15
Slide 15 text
WordPress WordPress Customization Customization
Slide 16
Slide 16 text
Thank you! Thank you! Ioannis Karavas Software Engineer