Plugin Directory

Changeset 1575156


Ignore:
Timestamp:
01/15/2017 03:30:08 PM (9 years ago)
Author:
bgin
Message:

Plugin réécrit en objet
Langage natif : anglais US
Traduction en français fr_FR

Location:
org-frontpage/trunk
Files:
4 added
3 edited

Legend:

Unmodified
Added
Removed
  • org-frontpage/trunk/org-frontpage-plugin-admin.php

    r1574336 r1575156  
    1313    if ( 'save' == $_REQUEST['action'] ) {
    1414        if( !isset( $_POST['nb_posts_frontpage_nonce'] ) || !wp_verify_nonce( $_POST['nb_posts_frontpage_nonce'], basename( __FILE__ ).'_truc' ) ){
    15                 _e("Action refusée", 'org-frontpage');
     15                _e("Action denied", 'org-frontpage');
    1616        }
    1717        else {
     
    3636
    3737
    38 <div class="wrap"><h1><?php _e("Paramétrage de la page d'accueil", 'org-frontpage'); ?></h1>
     38<div class="wrap"><h1><?php _e("Homepage Settings", 'org-frontpage'); ?></h1>
    3939<form method="post">
    4040
    41 <h3><?php _e("Nombre d'articles affichés sur la page d'accueil", 'org-frontpage'); ?></h3>
     41<h3><?php _e("Posts on the home page", 'org-frontpage'); ?></h3>
    4242
    4343<!-- Saisie du nombre d'articles de la Une -->
     
    4848
    4949<table class="optiontable">
    50 <tr valign="top"><th scope="row"><?php _e("Nb d'articles sur la page d'accueil", 'org-frontpage'); ?>:</th><td>
     50<tr valign="top"><th scope="row"><?php _e("Total number of posts on the home page", 'org-frontpage'); ?>:</th><td>
    5151<input type="number" name="<?php echo "nb_posts_frontpage"; ?>" id="<?php echo "nb_posts_frontpage" ?>"; min="1" value="<?php echo $nb_posts_frontpage; ?>">
    5252</td></tr>
    53 <tr valign="top"><th scope="row"><?php _e("Nb d'articles en tête de la page d'accueil", 'org-frontpage'); ?>:</th><td>
     53<tr valign="top"><th scope="row"><?php _e("Number of posts at the top of the home page", 'org-frontpage'); ?>:</th><td>
    5454<input type="number" name="<?php echo "nb_posts_lead"; ?>" id="<?php echo "nb_posts_lead" ?>"; min="0" value="<?php echo $nb_posts_lead; ?>">
    5555</td></tr>
    5656</table>
    57 <p>Les articles affichés sur la page d'accueil sont récapitulés ci-dessous<br />Le choix de ces articles ne peut pas être fait sur cette page : il s'effectue dans la page d'édition de l'article<br /></p>
     57<p><?php _e("The posts displayed on the home page are summarized below",'org-frontpage'); ?><br />
     58<?php _e("The selection of these posts cannot be done on this page: it takes place in the edit page of the post",'org-frontpage'); ?><br /></p>
    5859<table class="optiontable">
    5960<?php
     
    6869<!--Articles -->
    6970<tr valign="top">
    70 <th scope="row"><?php _e("Rang", 'org-frontpage'); echo " ".$i ; ?> : </th><td style="background-color: #FFFFFF;"><?php echo $titre; ?></td>
     71<th scope="row"><?php _e("Rank", 'org-frontpage'); echo " ".$i ; ?> : </th><td style="background-color: #FFFFFF;"><?php echo $titre; ?></td>
    7172</tr>
    7273        <?php } else { ?>
    7374<tr valign="top">
    74 <th scope="row"><?php _e("Rang", 'org-frontpage'); echo " ".$i ; ?> : </th><td style="background-color: #FFFFFF;"><?php _e("Post non défini", 'org-frontpage'); ?></td>
     75<th scope="row"><?php _e("Rank", 'org-frontpage'); echo " ".$i ; ?> : </th><td style="background-color: #FFFFFF;"><?php _e("Not set", 'org-frontpage'); ?></td>
    7576</tr>
    7677    <?php }} ?>
    7778
    7879</table>
    79 <p class="submit"><input name="save" type="submit" value="Enregistrer les changements" /><input type="hidden" name="action" value="save" /></p></form>
     80<p class="submit"><input name="save" type="submit" value=<?php _e("Save changes",'org-frontpage'); ?> /><input type="hidden" name="action" value=<?php _e("Save changes",'org-frontpage'); ?> /></p></form>
    8081
  • org-frontpage/trunk/org-frontpage.php

    r1574414 r1575156  
    22/*
    33Plugin Name: Organisation FrontPage
    4 Description: Ajout d'une meta box dans l'éditeur de posts pour définir le rang de l'article dans la page d'accueil
    5 Version: 1.3.3
     4Description: Adding a meta box in the post editor to set the rank of post in the home page
     5Version: 1.4
    66Author:      B Gineste
    77Text Domain: org-frontpage
     8Domain Path: /languages
    89Requires at least: 4.6
    910License:     GPLv2 or later
     
    1112?><?php
    1213$en_test = true;
    13 // Langues
    14 function org_frontpage_load_plugin_textdomain() {
    15     load_plugin_textdomain( 'org-frontpage', FALSE, basename( dirname( __FILE__ ) ) . '/languages' );
    16 }
    17 add_action( 'plugins_loaded', 'org_frontpage_load_plugin_textdomain' );
    18 
    19 
     14
     15class org_frontpage {
    2016// constantes
    21     $nb_posts_frontpage_std = 5; //nombre de posts à afficher en page d'accueil
    22     $nb_posts_lead_std = 0; //nombre de posts en entête en page d'accueil
    23 //  $nb_posts_frontpage_max = 20;
    24 //définition des variables globales
     17    public $nb_posts_frontpage_std = 5; //nombre de posts à afficher en page d'accueil
     18    public $nb_posts_lead_std = 0; //nombre de posts en entête en page d'accueil
     19//variables globales
    2520    // Nombre de posts en frontpage (méta donnée dans wp_options)
    26     if (!get_option('ofp_nb_posts_frontpage')) {update_option('ofp_nb_posts_frontpage',$nb_posts_frontpage_std);}
    27     $nb_posts_frontpage = get_option('ofp_nb_posts_frontpage');
    28     if (!$nb_posts_frontpage) {
    29         $nb_posts_frontpage = $nb_posts_frontpage_std;
    30         update_option('ofp_nb_posts_frontpage',$nb_posts_frontpage);
     21    public $nb_posts_frontpage;
     22    // nombre de posts en entête en page d'accueil
     23    public $nb_posts_lead;
     24    // tableau des noms des metadonnées de la table wp_options (option_name)
     25    public $option_names = array();
     26    // tableau des valeurs dans wp_options (option_value)
     27    public $option_values = array();
     28    // tableau des libellés (pour la saisie dans la méta box)
     29    //public $libelles = array();
     30   
     31    function __construct() {
     32
     33        global $nb_posts_frontpage;
     34        global $nb_posts_lead;
     35        global $option_names;
     36        global $option_values;
     37        //global $libelles;
     38
     39        add_action( 'plugins_loaded', array($this,'org_frontpage_load_plugin_textdomain') );
     40
     41        //définition des variables globales
     42            // Nombre de posts en frontpage (méta donnée dans wp_options)
     43            if (!get_option('ofp_nb_posts_frontpage')) {update_option('ofp_nb_posts_frontpage',$nb_posts_frontpage_std);}
     44            $nb_posts_frontpage = get_option('ofp_nb_posts_frontpage');
     45            if (!$nb_posts_frontpage) {
     46                $nb_posts_frontpage = $nb_posts_frontpage_std;
     47                update_option('ofp_nb_posts_frontpage',$nb_posts_frontpage);
     48            }
     49            // nombre de posts en entête en page d'accueil
     50            if (!get_option('ofp_nb_posts_lead')) {update_option('ofp_nb_posts_lead',$nb_posts_lead_std);}
     51            $nb_posts_lead = get_option('ofp_nb_posts_lead');
     52            if (!$nb_posts_lead) {
     53                $nb_posts_lead = $nb_posts_lead_std;
     54                update_option('ofp_nb_posts_lead',$nb_posts_lead);
     55            }
     56            // tableau des noms des metadonnées de la table wp_options (option_name)
     57            for ($i=1;$i<=$nb_posts_frontpage;$i++) {$option_names[$i] = "ofp_post_frontpage_".$i; }
     58            // tableau des valeurs dans wp_options (option_value)
     59            foreach ($option_names as $option_name) {$option_values[$option_name]=get_option($option_name); }
     60            // tableau des libellés (pour la saisie dans la méta box) : initialisé au moment de l'utiliser  (fonction les_libelles) : ici, il n'est pas traduit
     61            /*
     62            $libelles["pas_sur_frontpage"]="Pas sur la page d'accueil";
     63            $i=1;
     64            foreach ($option_names as $option_name) {$libelles[$option_name]="N° ".$i." / page d'accueil"; $i++;}
     65            */
     66            add_action('add_meta_boxes', array($this,'rang_post_meta_box_add' ));
     67            add_action('save_post', array($this,'rang_post_meta_box_save' ));
     68            add_action('manage_posts_custom_column', array($this,'data_colonne'));
     69            add_action('admin_menu',array($this,'org_frontpage_plugin_menu'));
     70            add_filter('manage_posts_columns' , array($this,'ofp_colonne'));
     71
     72        }
     73       
     74    function org_frontpage_load_plugin_textdomain() {
     75        load_plugin_textdomain( 'org-frontpage', FALSE, basename( dirname( __FILE__ ) ) . '/languages' );
    3176    }
    32     // nombre de posts en entête en page d'accueil
    33     if (!get_option('ofp_nb_posts_lead')) {update_option('ofp_nb_posts_lead',$nb_posts_lead_std);}
    34     $nb_posts_lead = get_option('ofp_nb_posts_lead');
    35     if (!$nb_posts_lead) {
    36         $nb_posts_lead = $nb_posts_lead_std;
    37         update_option('ofp_nb_posts_lead',$nb_posts_lead);
     77   
     78    function les_libelles() {
     79    // tableau des libellés (pour la saisie dans la combobox de la méta box)
     80        global $option_names;
     81       
     82        $libelles["pas_sur_frontpage"]=__("Not on the homepage", 'org-frontpage' );
     83        $i=1;
     84        foreach ($option_names as $option_name) {
     85            $libelles[$option_name]=__("#", 'org-frontpage' ).$i." / ".__("Home Page", 'org-frontpage' ); $i++;}
     86        return $libelles;
    3887    }
    39     // tableau des noms des metadonnées de la table wp_options (option_name)
    40     for ($i=1;$i<=$nb_posts_frontpage;$i++) {$option_names[$i] = "ofp_post_frontpage_".$i; }
    41     // tableau des valeurs dans wp_options (option_value)
    42     foreach ($option_names as $option_name) {$option_values[$option_name]=get_option($option_name); }
    43     // tableau des libellés (pour la saisie dans la méta box)
    44     $libelles["pas_sur_frontpage"]="Pas sur la page d'accueil";
    45     $i=1;
    46     foreach ($option_names as $option_name) {$libelles[$option_name]="N° ".$i." / page d'accueil"; $i++;}
     88
    4789
    4890/*
     
    5092*/
    5193
    52 add_action( 'add_meta_boxes', 'rang_post_meta_box_add' );
    5394
    5495function rang_post_meta_box_add()
    5596{
    56     add_meta_box( 'rang_post', __( 'En page d\'accueil', 'Rang [1 à n]' ), 'rang_post_meta_box_callback', 'post' );
     97    add_meta_box( 'rang_post', __( 'Location on home page', 'org-frontpage' ), array($this,'rang_post_meta_box_callback'), 'post' );
    5798}
    5899
     
    62103function rang_post_meta_box_callback($post)
    63104{
    64 global $libelles, $option_values;
    65 //Rang de l'article (définie par le nom de la méta donnée de wp-options)
    66 
     105global $option_values;
     106//Rang de l'article (défini par le nom de la méta donnée de wp-options)
     107    $libelles = $this->les_libelles();
    67108    // déterminer le rang de l'article sur la frontpage (par son option_name)
    68109    $rang_post = array_search($post->ID,$option_values);
     
    74115             wp_nonce_field( basename( __FILE__ ), 'organisation_frontpage' );
    75116        ?>
    76         <label for="rang_frontpage"><?php _e( 'Place de l\'article sur la page d\'accueil', 'org-frontpage' ); ?></label>
     117        <label for="rang_frontpage"><?php _e( 'Post location', 'org-frontpage' ); ?> </label>
    77118        <select  name="rang_frontpage" id="rang_frontpage">
    78119        <?php foreach ($libelles as $libelle) { ?><option<?php if ( array_search($libelle,$libelles) == $rang_post) { echo ' selected="selected"'; } ?>><?php echo $libelle; ?></option>
     
    87128*/
    88129
    89 add_action( 'save_post', 'rang_post_meta_box_save' );
    90130
    91131function rang_post_meta_box_save( $post_id )
    92132{
    93     global $libelles, $option_values;
     133    global $option_values;
     134    $libelles = $this->les_libelles();
    94135    // Bail if we're doing an auto save
    95136    if( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;
     
    117158       
    118159}
    119 ?><?php
     160
    120161/*
    121162Ajout d'une colonne dans la liste des posts (pour indiquer dans cette liste le rang des posts sur la frontpage)
     
    123164function ofp_colonne($columns) {
    124165 return array_merge( $columns,
    125  array('rang_frontpage' => __('Rang / frontpage')) );
    126 }
    127 
    128 add_filter('manage_posts_columns' , 'ofp_colonne');
     166 array('rang_frontpage' => __('Rank / home page')) );
     167}
     168
    129169
    130170// Affichage des données
    131 add_action('manage_posts_custom_column', 'data_colonne');
    132171
    133172function data_colonne($name) {
    134  global $post, $libelles, $option_values, $option_names;
     173 global $post, $option_values, $option_names;
     174 $libelles = $this->les_libelles();
    135175 switch ($name) {
    136176case 'rang_frontpage':
     
    150190 }
    151191 }
    152 ?><?php
     192
    153193/*
    154194Administration du plugin
    155195*/
    156196function org_frontpage_plugin_menu(){
    157     add_options_page('Organisation de la page d\'accueil', 'Org Frontpage', 'manage_options', 'org-frontpage-menu', 'org_frontpage_plugin_options');
     197    add_options_page('Organisation de la page d\'accueil', 'Org Frontpage', 'manage_options', 'org-frontpage-menu', array($this,'org_frontpage_plugin_options'));
    158198}
    159199
    160 add_action('admin_menu','org_frontpage_plugin_menu');
    161200
    162201function org_frontpage_plugin_options(){
    163202    include('org-frontpage-plugin-admin.php');
    164203}
     204
     205}
     206
     207new org_frontpage();
     208
    165209?><?php
    166210if ($en_test) {
  • org-frontpage/trunk/readme.txt

    r1574414 r1575156  
    105105* Correction de bugs / traduction
    106106
     107= 1.4 =
     108* plugin converti en programmation objet
     109* Langage natif : anglais US
     110* Traduction en français fr_FR
     111
Note: See TracChangeset for help on using the changeset viewer.