SlideShare uma empresa Scribd logo
1 de 32
MAKING WORDPRESS
   YOUR CMS
      Remind clients that you exist
    Provide support contact details
          Provide helpful hints
   Tell your clients what you’re doing
Automatically Update Your Plugin
CUSTOM
      LOGIN
     SCREEN
•Add clients logo
•Add link to your site
•Move Error messages above
the logo
LOGIN LOGO

<?php
function my_custom_login_logo() {
   echo '<style type="text/css">
      h1 a { background-image:url('.get_bloginfo('siteurl').'/wp-
content/custom-login-logo.png) !important; }
      .login .message { margin-top:-150px;margin-bottom:
110px;}
   </style>';
}
LOGIN YOUR LINK

<?php
function my_custom_login_credit() { ?>

     <p style="position:absolute;top:428px;left:50%;margin-left:
5px;">served by <a href="http://www.yourdomain.com"
title="Your Name" style="text-decoration:none;">Your
Name</a></p>
<?php }

add_action('login_footer', 'my_custom_login_credit');
?>
CUSTOM
      LOGIN
     SCREEN
•Add clients logo
•Add link to your site
EDITOR
 PERMISSIONS
•Allow editors to manage
menus and widgets
EDITOR PERMISSIONS

<?php
// get the the role object
$role_object = get_role( 'editor' );

// add capability to this role object
$role_object->add_cap( 'edit_theme_options' );
?>
EDITOR
 PERMISSIONS
•Allow editors to manage
menus and widgets
‘PIMP’ THE
    TITLE BAR
•Add your logo
•Add your name and link
•Add support contact details
‘PIMP’ THE TITLE BAR

<?php
add_action('admin_head', 'my_custom_logo');

function my_custom_logo() {
  echo '<style type="text/css">
       #header-logo { background-image: url(http://
yourdomain.com/logo.gif) !important; }</style>';
}?>
‘PIMP’ THE TITLE BAR
<?php
function fs_admin_link() { ?>

    <span style="font:normal 14px Georgia;padding: 8px 8px
5px;margin: 0;float: left;">served by <a href="http://
www.yourdomain.com">Your Name</a> | email: <a
href="mailto:you@yourdomain.co.uk" title="Email Your Name
Support">you@yourdomain.com</a> | tel: 000 0000 0000</
span>
<?php }
add_action('in_admin_header', 'fs_admin_link');
?>
‘PIMP’ THE
    TITLE BAR
•Add your logo
•Add your name and link
•Add support contact details
‘PIMP’ THE
     FOOTER
•Remove unwanted links
•Add your name and link
‘PIMP’ THE FOOTER
<?php
add_filter( 'admin_footer_text', 'my_admin_footer_text' );
function my_admin_footer_text( $default_text ) {
   return '<span id="footer-thankyou">Website managed by
<a href="http://yourdomain.com">Your Name</a><span> |
Powered by <a href="http://
www.wordpress.org">WordPress</a>';
}
?>
‘PIMP’ THE
     FOOTER
•Remove unwanted links
•Add your name and link
DECLUTTER THE DASHBOARD




•Remove confusing widgets
•Add support information
•Add your RSS feed
DECLUTTER THE DASHBOARD
<?php
// remove unnecessary dashboard widgets
function remove_dashboard_widgets(){

      global $wp_meta_boxes;

      // do not remove "Right Now" for administrators

      if (!current_user_can('activate_plugins')) {

      
      unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);

      }

      // remove widgets for everyone

      unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']);

      unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']);

      unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);

      unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);

      unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']);
}
add_action('wp_dashboard_setup', 'remove_dashboard_widgets');
?>
DECLUTTER THE DASHBOARD
<?php
add_action('wp_dashboard_setup', 'my_custom_dashboard_widgets');

function my_custom_dashboard_widgets() {
global $wp_meta_boxes;

wp_add_dashboard_widget('my_note_widget', 'Your Name Support', 'custom_dashboard_me');
}

function custom_dashboard_me() {
echo '<p>Welcome to your WordPress Dashboard, from here you can edit all of the content on
your website.</p><p>Need help? For support please email us at <a
href="mailto:you@yourdomain.com">you@yourdomain.com</a>.</p><p>You can find more
information on our <a href="http://www.yourdomain.com" title="Your Title">website</a>.</p>';
}
?>
DECLUTTER THE DASHBOARD
<?php
add_action('wp_dashboard_setup', 'my_dashboard_widgets');
function my_dashboard_widgets() {
    global $wp_meta_boxes;
    // add a custom dashboard widget
    wp_add_dashboard_widget( 'dashboard_custom_feed', 'My News',
'dashboard_custom_feed_output' ); //add new RSS feed output
}
function dashboard_custom_feed_output() {
    echo '
<div class="rss-widget">';
    wp_widget_rss_output(array(
        'url' => 'http://www.yourdomain.com/rss', //put your feed URL here
        'title' => 'My News',
        'items' => 3, //how many posts to show
        'show_summary' => 1,
        'show_author' => 0,
        'show_date' => 1
    ));
    echo "</div>
";
}
?>
DECLUTTER THE DASHBOARD




•Remove confusing widgets
•Add support information
•Add your RSS feed
RECAP
•Make the login screen look pretty
•Allow Editors to manage menus and widgets
•Add your details and logo to the title bar
•Put your name in the footer and remove confusing links
•Make the dashboard less confusing and more useful
•Add these codes to functions.php
•Or even better, your own plugin
•If you create a plugin and add it to all your client sites...
•... enable automatic updates before you start!
HOW TO - AUTO UPDATES

• Visit
     http://w-shadow.com/blog/2010/09/02/automatic-
 updates-for-any-plugin/

• Update    plugin header

• Create   metadata.json

• Zip   your plugin

• Upload   metadata.json and plugin.zip to web server
W-SHADOW.COM
UPDATE PLUGIN HEADER

<?php
require 'plugin-updates/plugin-update-checker.php';
$MyUpdateChecker = new PluginUpdateChecker(
   'http://yourdomain.com/plugins/yourplugin/metadata.json',
   __FILE__,
   'yourplugin'
);
?>
UPLOAD ‘PLUGIN UPDATES’


•Download the file from w-shadow.com
•Add the file to your plugin folder
•Have a beer
•This sets up the WordPress schedule
•Checks every 12 hours
CREATE METADATA.JSON

{
   "name" : "My Plugin Name",
   "slug" : "myslug",
   "download_url" : "http://domain.com/plugins/pluginname/
pluginname.zip",
   "version" : "0.5",
   "author" : "Chris Witham",
   "sections" : {
       "description" : "Add a description here."
 }
UPLOAD TO SERVER
UPLOAD TO SERVER


•Upload metadata.json and plugin.zip to your webserver
•Manually update the plugin on client site
•Ensure client site plugin is looking at your server
•Wait... (now is a good time for another beer!)
•... an hour later, or 12!
UPLOAD TO SERVER


•Upload metadata.json and plugin.zip to your webserver
•Manually update the plugin on client site
•Ensure client site plugin is looking at your server
•Wait... (now is a good time for another beer!)
•... an hour later, or 12!
UPLOAD TO SERVER


•Upload metadata.json and plugin.zip to your webserver
•Manually update the plugin on client site
•Ensure client site plugin is looking at your server
•Wait... (now is a good time for another beer!)
•... an hour later, or 12!
LIVE DEMO...
MAKING WORDPRESS
   YOUR CMS
+ Automatically Update Your Plugin

         By Chris Witham
  For South Yorkshire WordPress
           October 2011

Mais conteúdo relacionado

Mais procurados

PSD to WordPress
PSD to WordPressPSD to WordPress
PSD to WordPressNile Flores
 
Primefaces Nextgen Lju
Primefaces Nextgen LjuPrimefaces Nextgen Lju
Primefaces Nextgen LjuSkills Matter
 
Custom WordPress theme development
Custom WordPress theme developmentCustom WordPress theme development
Custom WordPress theme developmentTammy Hart
 
Integrating External APIs with WordPress
Integrating External APIs with WordPressIntegrating External APIs with WordPress
Integrating External APIs with WordPressMarty Thornley
 
Integrating WordPress With Web APIs
Integrating WordPress With Web APIsIntegrating WordPress With Web APIs
Integrating WordPress With Web APIsrandyhoyt
 
Introduction Django
Introduction DjangoIntroduction Django
Introduction DjangoWade Austin
 
WordPress Theme Development for Designers
WordPress Theme Development for DesignersWordPress Theme Development for Designers
WordPress Theme Development for Designerselliotjaystocks
 
The Themer's Guide to WP-CLI
The Themer's Guide to WP-CLIThe Themer's Guide to WP-CLI
The Themer's Guide to WP-CLIEdmund Turbin
 
WordPress Theme Development: Part 2
WordPress Theme Development: Part 2WordPress Theme Development: Part 2
WordPress Theme Development: Part 2Josh Lee
 
Intro to WordPress Plugin Development
Intro to WordPress Plugin DevelopmentIntro to WordPress Plugin Development
Intro to WordPress Plugin DevelopmentBrad Williams
 
Customizing WordPress Themes
Customizing WordPress ThemesCustomizing WordPress Themes
Customizing WordPress ThemesLaura Hartwig
 
Mastering WordPress Vol.1
Mastering WordPress Vol.1Mastering WordPress Vol.1
Mastering WordPress Vol.1Wataru OKAMOTO
 
Scalable web application architecture
Scalable web application architectureScalable web application architecture
Scalable web application architecturepostrational
 
Ilivanov Alexander.How to make best theme.DrupalCamp Kyiv 2011
Ilivanov Alexander.How to make best theme.DrupalCamp Kyiv 2011Ilivanov Alexander.How to make best theme.DrupalCamp Kyiv 2011
Ilivanov Alexander.How to make best theme.DrupalCamp Kyiv 2011camp_drupal_ua
 
HTML5, The Open Web, and what it means for you - Altran
HTML5, The Open Web, and what it means for you - AltranHTML5, The Open Web, and what it means for you - Altran
HTML5, The Open Web, and what it means for you - AltranRobert Nyman
 
Oracle APEX Performance
Oracle APEX PerformanceOracle APEX Performance
Oracle APEX PerformanceScott Wesley
 

Mais procurados (20)

PSD to WordPress
PSD to WordPressPSD to WordPress
PSD to WordPress
 
Primefaces Nextgen Lju
Primefaces Nextgen LjuPrimefaces Nextgen Lju
Primefaces Nextgen Lju
 
Custom WordPress theme development
Custom WordPress theme developmentCustom WordPress theme development
Custom WordPress theme development
 
Integrating External APIs with WordPress
Integrating External APIs with WordPressIntegrating External APIs with WordPress
Integrating External APIs with WordPress
 
Integrating WordPress With Web APIs
Integrating WordPress With Web APIsIntegrating WordPress With Web APIs
Integrating WordPress With Web APIs
 
Introduction Django
Introduction DjangoIntroduction Django
Introduction Django
 
WordPress Theme Development for Designers
WordPress Theme Development for DesignersWordPress Theme Development for Designers
WordPress Theme Development for Designers
 
The Themer's Guide to WP-CLI
The Themer's Guide to WP-CLIThe Themer's Guide to WP-CLI
The Themer's Guide to WP-CLI
 
WordPress Theme Development: Part 2
WordPress Theme Development: Part 2WordPress Theme Development: Part 2
WordPress Theme Development: Part 2
 
Intro to WordPress Plugin Development
Intro to WordPress Plugin DevelopmentIntro to WordPress Plugin Development
Intro to WordPress Plugin Development
 
The wp config.php
The wp config.phpThe wp config.php
The wp config.php
 
Customizing WordPress Themes
Customizing WordPress ThemesCustomizing WordPress Themes
Customizing WordPress Themes
 
Mastering WordPress Vol.1
Mastering WordPress Vol.1Mastering WordPress Vol.1
Mastering WordPress Vol.1
 
Challenges going mobile
Challenges going mobileChallenges going mobile
Challenges going mobile
 
Scalable web application architecture
Scalable web application architectureScalable web application architecture
Scalable web application architecture
 
Ilivanov Alexander.How to make best theme.DrupalCamp Kyiv 2011
Ilivanov Alexander.How to make best theme.DrupalCamp Kyiv 2011Ilivanov Alexander.How to make best theme.DrupalCamp Kyiv 2011
Ilivanov Alexander.How to make best theme.DrupalCamp Kyiv 2011
 
HTML5, The Open Web, and what it means for you - Altran
HTML5, The Open Web, and what it means for you - AltranHTML5, The Open Web, and what it means for you - Altran
HTML5, The Open Web, and what it means for you - Altran
 
Oracle APEX Performance
Oracle APEX PerformanceOracle APEX Performance
Oracle APEX Performance
 
Html5
Html5Html5
Html5
 
Api
ApiApi
Api
 

Destaque

Making it Mine: Customizing a WordPress Theme
Making it Mine: Customizing a WordPress ThemeMaking it Mine: Customizing a WordPress Theme
Making it Mine: Customizing a WordPress ThemeTom Hapgood
 
Dhaka WordPress Meetup 3 - Presentation for Template hierarchy
Dhaka WordPress Meetup 3 - Presentation for Template hierarchy Dhaka WordPress Meetup 3 - Presentation for Template hierarchy
Dhaka WordPress Meetup 3 - Presentation for Template hierarchy Md Jahidul Islam
 
Creating WordPress Theme Faster, Smarter & Without Swearing
Creating WordPress Theme Faster, Smarter & Without SwearingCreating WordPress Theme Faster, Smarter & Without Swearing
Creating WordPress Theme Faster, Smarter & Without Swearingmartinwolak
 
Wordpress theme development
Wordpress theme developmentWordpress theme development
Wordpress theme developmentNaeem Junejo
 
Content Management Systems: An Executive Review
Content Management Systems: An Executive ReviewContent Management Systems: An Executive Review
Content Management Systems: An Executive ReviewWilliam Price
 
How To Use Wordpress For Dang Near Anything Pcn10
How To Use Wordpress For Dang Near Anything Pcn10How To Use Wordpress For Dang Near Anything Pcn10
How To Use Wordpress For Dang Near Anything Pcn10Mitch Canter
 
Creating a WordPress Website that Works from the Start
Creating a WordPress Website that Works from the StartCreating a WordPress Website that Works from the Start
Creating a WordPress Website that Works from the StartNile Flores
 
22 Forex Trading Mistakes Costing you Money
22 Forex Trading Mistakes Costing you Money22 Forex Trading Mistakes Costing you Money
22 Forex Trading Mistakes Costing you MoneyxUWx
 
Top 20 WordPress Plugins You've Never Heard Of
Top 20 WordPress Plugins You've Never Heard OfTop 20 WordPress Plugins You've Never Heard Of
Top 20 WordPress Plugins You've Never Heard OfBrad Williams
 
6 Useful Tips For WordPress Theme Development!
6 Useful Tips For WordPress Theme Development!6 Useful Tips For WordPress Theme Development!
6 Useful Tips For WordPress Theme Development!TalentsFromIndia.com
 
WordPress Template hierarchy
WordPress Template hierarchyWordPress Template hierarchy
WordPress Template hierarchyJason Yingling
 
Supercharge Your WordPress Blog with Plugins
Supercharge Your WordPress Blog with PluginsSupercharge Your WordPress Blog with Plugins
Supercharge Your WordPress Blog with PluginsDreb Bitanghol
 

Destaque (14)

Making it Mine: Customizing a WordPress Theme
Making it Mine: Customizing a WordPress ThemeMaking it Mine: Customizing a WordPress Theme
Making it Mine: Customizing a WordPress Theme
 
Dhaka WordPress Meetup 3 - Presentation for Template hierarchy
Dhaka WordPress Meetup 3 - Presentation for Template hierarchy Dhaka WordPress Meetup 3 - Presentation for Template hierarchy
Dhaka WordPress Meetup 3 - Presentation for Template hierarchy
 
Creating WordPress Theme Faster, Smarter & Without Swearing
Creating WordPress Theme Faster, Smarter & Without SwearingCreating WordPress Theme Faster, Smarter & Without Swearing
Creating WordPress Theme Faster, Smarter & Without Swearing
 
Wordpress theme development
Wordpress theme developmentWordpress theme development
Wordpress theme development
 
Content Management Systems: An Executive Review
Content Management Systems: An Executive ReviewContent Management Systems: An Executive Review
Content Management Systems: An Executive Review
 
How To Use Wordpress For Dang Near Anything Pcn10
How To Use Wordpress For Dang Near Anything Pcn10How To Use Wordpress For Dang Near Anything Pcn10
How To Use Wordpress For Dang Near Anything Pcn10
 
Creating a WordPress Website that Works from the Start
Creating a WordPress Website that Works from the StartCreating a WordPress Website that Works from the Start
Creating a WordPress Website that Works from the Start
 
22 Forex Trading Mistakes Costing you Money
22 Forex Trading Mistakes Costing you Money22 Forex Trading Mistakes Costing you Money
22 Forex Trading Mistakes Costing you Money
 
Top 20 WordPress Plugins You've Never Heard Of
Top 20 WordPress Plugins You've Never Heard OfTop 20 WordPress Plugins You've Never Heard Of
Top 20 WordPress Plugins You've Never Heard Of
 
6 Useful Tips For WordPress Theme Development!
6 Useful Tips For WordPress Theme Development!6 Useful Tips For WordPress Theme Development!
6 Useful Tips For WordPress Theme Development!
 
WordPress Template hierarchy
WordPress Template hierarchyWordPress Template hierarchy
WordPress Template hierarchy
 
Web site proposal
Web site proposalWeb site proposal
Web site proposal
 
Forex trading strategies
Forex trading strategiesForex trading strategies
Forex trading strategies
 
Supercharge Your WordPress Blog with Plugins
Supercharge Your WordPress Blog with PluginsSupercharge Your WordPress Blog with Plugins
Supercharge Your WordPress Blog with Plugins
 

Semelhante a Making WordPress Your CMS and Automatically Updating a Self Hosted WordPress Plugin

Presentation html5 css3 by thibaut
Presentation html5 css3 by thibautPresentation html5 css3 by thibaut
Presentation html5 css3 by thibautThibaut Baillet
 
Beyond the WordPress 5 minute Install
Beyond the WordPress 5 minute InstallBeyond the WordPress 5 minute Install
Beyond the WordPress 5 minute InstallSteve Taylor
 
WordPress
WordPressWordPress
WordPressrisager
 
Theming Wordpress for Your Showcases
Theming Wordpress for Your ShowcasesTheming Wordpress for Your Showcases
Theming Wordpress for Your ShowcasesJun Hu
 
WordPress Admin UI - Future Proofing Your Admin Pages
WordPress Admin UI - Future Proofing Your Admin PagesWordPress Admin UI - Future Proofing Your Admin Pages
WordPress Admin UI - Future Proofing Your Admin PagesBrandon Dove
 
Wordpress Beyond Websites
Wordpress Beyond WebsitesWordpress Beyond Websites
Wordpress Beyond WebsitesScott Saunders
 
Hardening WordPress - SAScon Manchester 2013 (WordPress Security)
Hardening WordPress - SAScon Manchester 2013 (WordPress Security)Hardening WordPress - SAScon Manchester 2013 (WordPress Security)
Hardening WordPress - SAScon Manchester 2013 (WordPress Security)Bastian Grimm
 
Creating Your First WordPress Plugin
Creating Your First WordPress PluginCreating Your First WordPress Plugin
Creating Your First WordPress PluginBrad Williams
 
Introduction to blogging with Jekyll
Introduction to blogging with JekyllIntroduction to blogging with Jekyll
Introduction to blogging with JekyllEric Lathrop
 
Source Ordered Templates - - Joomla!Days NL 2009 #jd09nl
Source Ordered Templates - - Joomla!Days NL 2009 #jd09nlSource Ordered Templates - - Joomla!Days NL 2009 #jd09nl
Source Ordered Templates - - Joomla!Days NL 2009 #jd09nlJoomla!Days Netherlands
 
[Bristol WordPress] Supercharging WordPress Development
[Bristol WordPress] Supercharging WordPress Development[Bristol WordPress] Supercharging WordPress Development
[Bristol WordPress] Supercharging WordPress DevelopmentAdam Tomat
 
WordPress Security Updated - NYC Meetup 2009
WordPress Security Updated - NYC Meetup 2009WordPress Security Updated - NYC Meetup 2009
WordPress Security Updated - NYC Meetup 2009Brad Williams
 
Developers, Be a Bada$$ with WP-CLI
Developers, Be a Bada$$ with WP-CLIDevelopers, Be a Bada$$ with WP-CLI
Developers, Be a Bada$$ with WP-CLIWP Engine
 
2022 HTML5: The future is now
2022 HTML5: The future is now2022 HTML5: The future is now
2022 HTML5: The future is nowGonzalo Cordero
 
Refresh Austin - Intro to Dexy
Refresh Austin - Intro to DexyRefresh Austin - Intro to Dexy
Refresh Austin - Intro to Dexyananelson
 
WordPress and The Command Line
WordPress and The Command LineWordPress and The Command Line
WordPress and The Command LineKelly Dwan
 

Semelhante a Making WordPress Your CMS and Automatically Updating a Self Hosted WordPress Plugin (20)

Presentation html5 css3 by thibaut
Presentation html5 css3 by thibautPresentation html5 css3 by thibaut
Presentation html5 css3 by thibaut
 
Beyond the WordPress 5 minute Install
Beyond the WordPress 5 minute InstallBeyond the WordPress 5 minute Install
Beyond the WordPress 5 minute Install
 
WordPress
WordPressWordPress
WordPress
 
Theming Wordpress for Your Showcases
Theming Wordpress for Your ShowcasesTheming Wordpress for Your Showcases
Theming Wordpress for Your Showcases
 
WordPress Admin UI - Future Proofing Your Admin Pages
WordPress Admin UI - Future Proofing Your Admin PagesWordPress Admin UI - Future Proofing Your Admin Pages
WordPress Admin UI - Future Proofing Your Admin Pages
 
Wordpress Beyond Websites
Wordpress Beyond WebsitesWordpress Beyond Websites
Wordpress Beyond Websites
 
Hardening WordPress - SAScon Manchester 2013 (WordPress Security)
Hardening WordPress - SAScon Manchester 2013 (WordPress Security)Hardening WordPress - SAScon Manchester 2013 (WordPress Security)
Hardening WordPress - SAScon Manchester 2013 (WordPress Security)
 
Creating Your First WordPress Plugin
Creating Your First WordPress PluginCreating Your First WordPress Plugin
Creating Your First WordPress Plugin
 
Introduction to blogging with Jekyll
Introduction to blogging with JekyllIntroduction to blogging with Jekyll
Introduction to blogging with Jekyll
 
20110820 header new style
20110820 header new style20110820 header new style
20110820 header new style
 
Source Ordered Templates - - Joomla!Days NL 2009 #jd09nl
Source Ordered Templates - - Joomla!Days NL 2009 #jd09nlSource Ordered Templates - - Joomla!Days NL 2009 #jd09nl
Source Ordered Templates - - Joomla!Days NL 2009 #jd09nl
 
[Bristol WordPress] Supercharging WordPress Development
[Bristol WordPress] Supercharging WordPress Development[Bristol WordPress] Supercharging WordPress Development
[Bristol WordPress] Supercharging WordPress Development
 
WordPress Security Updated - NYC Meetup 2009
WordPress Security Updated - NYC Meetup 2009WordPress Security Updated - NYC Meetup 2009
WordPress Security Updated - NYC Meetup 2009
 
Mobile themes, QR codes, and shortURLs
Mobile themes, QR codes, and shortURLsMobile themes, QR codes, and shortURLs
Mobile themes, QR codes, and shortURLs
 
Developers, Be a Bada$$ with WP-CLI
Developers, Be a Bada$$ with WP-CLIDevelopers, Be a Bada$$ with WP-CLI
Developers, Be a Bada$$ with WP-CLI
 
2022 HTML5: The future is now
2022 HTML5: The future is now2022 HTML5: The future is now
2022 HTML5: The future is now
 
Word Camp Fukuoka2010
Word Camp Fukuoka2010Word Camp Fukuoka2010
Word Camp Fukuoka2010
 
Extending WordPress
Extending WordPressExtending WordPress
Extending WordPress
 
Refresh Austin - Intro to Dexy
Refresh Austin - Intro to DexyRefresh Austin - Intro to Dexy
Refresh Austin - Intro to Dexy
 
WordPress and The Command Line
WordPress and The Command LineWordPress and The Command Line
WordPress and The Command Line
 

Último

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 

Último (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Making WordPress Your CMS and Automatically Updating a Self Hosted WordPress Plugin

  • 1. MAKING WORDPRESS YOUR CMS Remind clients that you exist Provide support contact details Provide helpful hints Tell your clients what you’re doing Automatically Update Your Plugin
  • 2. CUSTOM LOGIN SCREEN •Add clients logo •Add link to your site •Move Error messages above the logo
  • 3. LOGIN LOGO <?php function my_custom_login_logo() { echo '<style type="text/css"> h1 a { background-image:url('.get_bloginfo('siteurl').'/wp- content/custom-login-logo.png) !important; } .login .message { margin-top:-150px;margin-bottom: 110px;} </style>'; }
  • 4. LOGIN YOUR LINK <?php function my_custom_login_credit() { ?> <p style="position:absolute;top:428px;left:50%;margin-left: 5px;">served by <a href="http://www.yourdomain.com" title="Your Name" style="text-decoration:none;">Your Name</a></p> <?php } add_action('login_footer', 'my_custom_login_credit'); ?>
  • 5. CUSTOM LOGIN SCREEN •Add clients logo •Add link to your site
  • 6. EDITOR PERMISSIONS •Allow editors to manage menus and widgets
  • 7. EDITOR PERMISSIONS <?php // get the the role object $role_object = get_role( 'editor' ); // add capability to this role object $role_object->add_cap( 'edit_theme_options' ); ?>
  • 8. EDITOR PERMISSIONS •Allow editors to manage menus and widgets
  • 9. ‘PIMP’ THE TITLE BAR •Add your logo •Add your name and link •Add support contact details
  • 10. ‘PIMP’ THE TITLE BAR <?php add_action('admin_head', 'my_custom_logo'); function my_custom_logo() { echo '<style type="text/css"> #header-logo { background-image: url(http:// yourdomain.com/logo.gif) !important; }</style>'; }?>
  • 11. ‘PIMP’ THE TITLE BAR <?php function fs_admin_link() { ?> <span style="font:normal 14px Georgia;padding: 8px 8px 5px;margin: 0;float: left;">served by <a href="http:// www.yourdomain.com">Your Name</a> | email: <a href="mailto:you@yourdomain.co.uk" title="Email Your Name Support">you@yourdomain.com</a> | tel: 000 0000 0000</ span> <?php } add_action('in_admin_header', 'fs_admin_link'); ?>
  • 12. ‘PIMP’ THE TITLE BAR •Add your logo •Add your name and link •Add support contact details
  • 13. ‘PIMP’ THE FOOTER •Remove unwanted links •Add your name and link
  • 14. ‘PIMP’ THE FOOTER <?php add_filter( 'admin_footer_text', 'my_admin_footer_text' ); function my_admin_footer_text( $default_text ) { return '<span id="footer-thankyou">Website managed by <a href="http://yourdomain.com">Your Name</a><span> | Powered by <a href="http:// www.wordpress.org">WordPress</a>'; } ?>
  • 15. ‘PIMP’ THE FOOTER •Remove unwanted links •Add your name and link
  • 16. DECLUTTER THE DASHBOARD •Remove confusing widgets •Add support information •Add your RSS feed
  • 17. DECLUTTER THE DASHBOARD <?php // remove unnecessary dashboard widgets function remove_dashboard_widgets(){ global $wp_meta_boxes; // do not remove "Right Now" for administrators if (!current_user_can('activate_plugins')) { unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']); } // remove widgets for everyone unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']); unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']); unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']); unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']); unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']); } add_action('wp_dashboard_setup', 'remove_dashboard_widgets'); ?>
  • 18. DECLUTTER THE DASHBOARD <?php add_action('wp_dashboard_setup', 'my_custom_dashboard_widgets'); function my_custom_dashboard_widgets() { global $wp_meta_boxes; wp_add_dashboard_widget('my_note_widget', 'Your Name Support', 'custom_dashboard_me'); } function custom_dashboard_me() { echo '<p>Welcome to your WordPress Dashboard, from here you can edit all of the content on your website.</p><p>Need help? For support please email us at <a href="mailto:you@yourdomain.com">you@yourdomain.com</a>.</p><p>You can find more information on our <a href="http://www.yourdomain.com" title="Your Title">website</a>.</p>'; } ?>
  • 19. DECLUTTER THE DASHBOARD <?php add_action('wp_dashboard_setup', 'my_dashboard_widgets'); function my_dashboard_widgets() { global $wp_meta_boxes; // add a custom dashboard widget wp_add_dashboard_widget( 'dashboard_custom_feed', 'My News', 'dashboard_custom_feed_output' ); //add new RSS feed output } function dashboard_custom_feed_output() { echo ' <div class="rss-widget">'; wp_widget_rss_output(array( 'url' => 'http://www.yourdomain.com/rss', //put your feed URL here 'title' => 'My News', 'items' => 3, //how many posts to show 'show_summary' => 1, 'show_author' => 0, 'show_date' => 1 )); echo "</div> "; } ?>
  • 20. DECLUTTER THE DASHBOARD •Remove confusing widgets •Add support information •Add your RSS feed
  • 21. RECAP •Make the login screen look pretty •Allow Editors to manage menus and widgets •Add your details and logo to the title bar •Put your name in the footer and remove confusing links •Make the dashboard less confusing and more useful •Add these codes to functions.php •Or even better, your own plugin •If you create a plugin and add it to all your client sites... •... enable automatic updates before you start!
  • 22. HOW TO - AUTO UPDATES • Visit http://w-shadow.com/blog/2010/09/02/automatic- updates-for-any-plugin/ • Update plugin header • Create metadata.json • Zip your plugin • Upload metadata.json and plugin.zip to web server
  • 24. UPDATE PLUGIN HEADER <?php require 'plugin-updates/plugin-update-checker.php'; $MyUpdateChecker = new PluginUpdateChecker( 'http://yourdomain.com/plugins/yourplugin/metadata.json', __FILE__, 'yourplugin' ); ?>
  • 25. UPLOAD ‘PLUGIN UPDATES’ •Download the file from w-shadow.com •Add the file to your plugin folder •Have a beer •This sets up the WordPress schedule •Checks every 12 hours
  • 26. CREATE METADATA.JSON { "name" : "My Plugin Name", "slug" : "myslug", "download_url" : "http://domain.com/plugins/pluginname/ pluginname.zip", "version" : "0.5", "author" : "Chris Witham", "sections" : { "description" : "Add a description here." }
  • 28. UPLOAD TO SERVER •Upload metadata.json and plugin.zip to your webserver •Manually update the plugin on client site •Ensure client site plugin is looking at your server •Wait... (now is a good time for another beer!) •... an hour later, or 12!
  • 29. UPLOAD TO SERVER •Upload metadata.json and plugin.zip to your webserver •Manually update the plugin on client site •Ensure client site plugin is looking at your server •Wait... (now is a good time for another beer!) •... an hour later, or 12!
  • 30. UPLOAD TO SERVER •Upload metadata.json and plugin.zip to your webserver •Manually update the plugin on client site •Ensure client site plugin is looking at your server •Wait... (now is a good time for another beer!) •... an hour later, or 12!
  • 32. MAKING WORDPRESS YOUR CMS + Automatically Update Your Plugin By Chris Witham For South Yorkshire WordPress October 2011

Notas do Editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n