IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WordPress PHP Discussion :

Un peu d'ordre dans un code PHP qui me dépasse.


Sujet :

WordPress PHP

  1. #1
    Membre averti
    Homme Profil pro
    aux études mais 40 ans
    Inscrit en
    Juin 2004
    Messages
    2 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : aux études mais 40 ans

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 010
    Points : 308
    Points
    308
    Par défaut Un peu d'ordre dans un code PHP qui me dépasse.
    Bonjour,

    Je suis occupé de faire un site avec Wordpress (grâce aux conseils recueillis ici).
    C'est vrai que c'est sympas mais de temps en temps il faut tout de même bricoler un peu pour arriver à ce qu'on veut.
    C'est ce qui me pose problème ici.
    Je n'ai trouvé aucune gestion des évent's qui me plaise dans les plugins WP et donc je me suis mis en tête (mauvaise idée) de modifier ce qui existe pour que ça corresponde à ce que je veux.
    Après avoir pas mal cherché j'ai trouvé le fichier PHP qui génère les "blocs" qui constitue les différents évents.
    Par bloc j'entends le carrès blancs que vous voyez sur cette page : http://www.espaceimagi.be/wp_jerome_de_warzee/agenda-3/
    Ce que je veux c'est modifier cette page PHP pour pouvoir définir librement ce que je veux qui s'affiche dans chaque bloc. Rien à foutre du compte à rebourds qui s'affiche actuellement quand on survolle, poubelles ces couleurs ignobles, ces caractères, bref je veux TOUT virer et repartir de zéro.
    Le problème c'est que je ne comprends pas fort le code de la page (qui est ci dessous) et donc je n'arrive pas à isoler la partie qui m'intéresse.
    Je suppose que c'est structuré de manière à
    - Lire la date de l'évent.
    - Tester si elle est passée ou avenir.
    - Afficher des variables avec de l'HTML en fonction de la date (si elle n'est pas passée).

    Et donc je suppose qu'il doit y avoir une div qui enferme toute la partie qui affiche le contenu des carrés blancs.

    Ce que je voudrais c'est arriver à virer TOUT ce qui n'est pas le teste de la date et la div.
    Après je reconstruirais les contenu de la DIV pour afficher ce que je veux comme je veux dans les carrés blancs (qui d'ailleurs ne serait plus blancs).


    Est ce que quelqu'un pourrait m'aider dans cette démarche ?
    Je pense savoir ou est la div en question mais quelque chose m’échappe encore (regardez après le code).

    Code original :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    <?php
    global $wp_query, $events_filter;
     
    $expanded = ( isset($_GET['id']) && $_GET['id'] == get_the_ID() ? 'expanded' : false );
    $show_countdown = (bool)get_iron_option('events_show_countdown_rollover');
    $item_show_countdown = (bool)get_field('event_enable_countdown');
    if($show_countdown != $item_show_countdown) {
    	$show_countdown = $item_show_countdown;
    }
     
    $post->filter = (strtotime($post->post_date) > time()) ? 'upcoming' : 'past';
     
    if((!empty($events_filter) && $events_filter == 'past') || (!empty($wp_query->query_vars['filter']) && $wp_query->query_vars['filter'] == 'past') || (!empty($post->filter) && $post->filter == 'past')) {
    	$show_countdown = false;
    }	
     
    ?>		
    <li id="post-<?php the_ID(); ?>" <?php post_class($expanded); ?>>
    	<!-- title-row -->
    	<div class="title-row <?php echo ((!empty($show_countdown)) ? 'has_countdown' : '')?>">
    		<div class="event-centering">
    			<time class="datetime" datetime="<?php echo get_the_time('c'); ?>"><?php echo get_the_date(); ?></time>
    			<div class="event-text-wrap">
    				<span class="location"><?php the_title(); ?></span>
     
    				<span class="city">
    					<?php 
    					$showtime = (bool)get_field('event_show_time');
    					$city = get_field('event_city');
    					$venue = get_field('event_venue');
     
    					if( !empty($showtime) ) {
    						echo get_the_time();
     
    					}
     
    					if( !empty($showtime) && !empty($city) ) {
    						echo ', ';
    					}
     
    					if ( !empty($city) ) { 
    						echo $city; 
    					}	
     
    					if( !empty($city) && !empty($venue)) {
    						echo ', ';
    					}
     
    					if ( !empty($venue) ) { 
    						echo $venue; 
    					}
     
    					?>
    				</span>
     
    			</div>
    			<?php
    			$more_label = get_iron_option('events_more_label_on_mobile');
    			?>
    			<div class="event-more-button"><?php echo __($more_label, IRON_TEXT_DOMAIN); ?></div>
    			<div class="clear"></div>
    		</div>
    		<a href="<?php the_permalink(); ?>" class="buttons no-touch">
    			<?php if(!empty($show_countdown)): ?>
    			<!-- HOVER COUNTDOWN -->
    			<div class="countdown-wrap">
    				<script>
    				jQuery(function () {
    					/* Countdown Call */
    					function CountCall(Row,Day){
    						jQuery('.'+Row+' .countdown-block').countdown({until: Day, padZeroes: true, format:'DHMS'});
    					};
    					var event_y = <?php echo get_the_time('Y'); ?>;
    					var event_m = <?php echo get_the_time('m'); ?>;
    					var event_d = <?php echo get_the_time('d'); ?>;
    					var event_g = <?php echo get_the_time('H'); ?>;
    					var event_i = <?php echo get_the_time('i'); ?>;
    					var targetRow = 'post-<?php the_ID(); ?>';
    					var targetDay = new Date(event_y,event_m-1,event_d,event_g,event_i);
    					CountCall(targetRow,targetDay);
    					//Remove the following line's comment to stop the timers
    					//jQuery('.countdown-block').countdown('pause');
    				});
    				</script>
    				<div class="countdown-block"></div>
    				<div class="event-text-wrap btn">
    					<span class="location-h"><?php the_title(); ?></span>
    					<?php if ( get_field('event_city') ) { ?>
    						<span class="city-h">
    							<?php 
    							$showtime = get_field('gig_show_time');
    							if($showtime == '1'){
    								echo get_the_time();
    								echo ', ';
    							}?>
    							<?php the_field('event_city'); ?>
    						</span>
    					<?php } ?>
    				</div>
    				<div class="clear:both;"></div>
    			</div>
    			<?php endif; ?>
    			<div class="button-wrap"></div>
    		</a>
    		<div class="clear"></div>
    	</div>
    </li>
    Ce que j'ai fait dans un premier temps c'est supprimer tout ce qui ne m'intéresse pas.
    Il me restait donc ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <?php
    global $wp_query, $events_filter;
     
    $expanded = ( isset($_GET['id']) && $_GET['id'] == get_the_ID() ? 'expanded' : false );
    $show_countdown = (bool)get_iron_option('events_show_countdown_rollover');
    $item_show_countdown = (bool)get_field('event_enable_countdown');
    if($show_countdown != $item_show_countdown) {
    	$show_countdown = $item_show_countdown;
    }
     
    $post->filter = (strtotime($post->post_date) > time()) ? 'upcoming' : 'past';
     
    if((!empty($events_filter) && $events_filter == 'past') || (!empty($wp_query->query_vars['filter']) && $wp_query->query_vars['filter'] == 'past') || (!empty($post->filter) && $post->filter == 'past')) {
    	$show_countdown = false;
    }	
     
    ?>		
    <li id="post-<?php the_ID(); ?>" <?php post_class($expanded); ?>>
    	<!-- title-row -->
    	<div class="title-row"> 
    	TEST
    	</div>
    </li>
    Je test et en effet j'ai deux carrés blancs avec juste le mot TEST dedans.
    Donc jusque là tout va bien sauf que justement les carrés sont blancs et que moi je les veux disons vert par exemple.
    Le seul truc possible c'est que title-row fasse référence au CSS que j'ai donc été visité mais je ne trouve pas ou.

  2. #2
    Membre averti
    Homme Profil pro
    aux études mais 40 ans
    Inscrit en
    Juin 2004
    Messages
    2 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : aux études mais 40 ans

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 010
    Points : 308
    Points
    308
    Par défaut
    Le CSS est visible ici : http://www.espaceimagi.be/divers/wp_style.css

    Donc voilà je suis un peu perdu, et probablement que je me suis lancé dans un truc qui me dépasse mais là je suis vraiment frustré et j'aimerais comprendre.
    Donc si vous savez me donner un gros coup de pouce sur ce probléme ce serait vraiment cool...

    A fort bientôt...

  3. #3
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 220
    Points : 15 511
    Points
    15 511
    Par défaut
    Citation Envoyé par Yepazix Voir le message
    Par bloc j'entends le carrès blancs que vous voyez sur cette page : http://www.espaceimagi.be/wp_jerome_de_warzee/agenda-3/
    le lien ne fonctionne pas

    pour savoir quel code CSS s'applique à un élément, tu peux utiliser la console de développement de ton navigateur
    par exemple avec Firefox, fais Ctrl+Maj+C et clique ensuite sur l'élément comme expliqué ici :
    https://developer.mozilla.org/fr/docs/Outils/inspecteur

  4. #4
    Membre averti
    Homme Profil pro
    aux études mais 40 ans
    Inscrit en
    Juin 2004
    Messages
    2 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : aux études mais 40 ans

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 010
    Points : 308
    Points
    308
    Par défaut
    Merci pour ta réponse.
    Moi le lien fonctionne ? Je suis au boulot et j'ai cliqué dessus et je vois bien la page !
    Pour ce qui est du CSS pas besoin de la console, il suffit de lire le code :

    <div class="title-row

    mais je ne comprends pas le CSS par rapport à ce Title-row....

  5. #5
    Membre expérimenté

    Homme Profil pro
    Webmaster
    Inscrit en
    Mai 2011
    Messages
    1 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 049
    Points : 1 689
    Points
    1 689
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Yepazix Voir le message
    Merci pour ta réponse.
    Moi le lien fonctionne ? Je suis au boulot et j'ai cliqué dessus et je vois bien la page !
    Pour ce qui est du CSS pas besoin de la console, il suffit de lire le code :

    <div class="title-row

    mais je ne comprends pas le CSS par rapport à ce Title-row....
    Oui le lien fonctionne.
    Le css "title-row" sert à décrire les caractéristiques de la ligne du titre. Mais difficile de les expliquer car il y a 55 spécifications pour cet attribut.
    Il faudrait aussi voir ce que cela donne, car je ne vois pas bien ce que sont les 2 carrés blancs ?

  6. #6
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 220
    Points : 15 511
    Points
    15 511
    Par défaut
    Citation Envoyé par Yepazix Voir le message
    Moi le lien fonctionne ? Je suis au boulot et j'ai cliqué dessus et je vois bien la page !
    maintenant c'est bon pour moi. hier quand je cliquais sur le lien, le message d'erreur était que le nom de domaine n'existait pas. mais bref ne rajoutons pas d'autres problèmes

    Citation Envoyé par Yepazix Voir le message
    mais je ne comprends pas le CSS par rapport à ce Title-row....
    c'est justement l'utilité de la console. l'inspecteur de code indique directement que la couleur blanche viens du fichier themes/lush/style.css à la ligne 2692 ou alors du fichier custom-style.css à la ligne 301

    il faudrait que tu apprennes à utiliser cet outil et comme ça tu pourras trouver toi même ces informations

  7. #7
    Membre averti
    Homme Profil pro
    aux études mais 40 ans
    Inscrit en
    Juin 2004
    Messages
    2 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : aux études mais 40 ans

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 010
    Points : 308
    Points
    308
    Par défaut
    OK, je comprends mieux.
    Merci à tous les deux.
    Par contre ce que je ne comprends pas encore bien c'est que même en retournant dans tous les sens tous les dossiers je ne trouve pas de fichier custom-style.css.
    --> Nouvelle question :
    Est il possible (dans Wordpress) qu'un fichier CSS soit "généré" d'une manière ou d'une autre et que donc il n'existe pas dans les fichiers à la base et qu'il soit créé au moment de l'utilisation ?
    Ce qui expliquerait pourquoi même quand je modifie style.css de cette manière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    .concerts-list li{
    	margin:0 0 3px;
    	overflow:hidden;
    	background:#0000FF;
    	position:relative;
    	display:block;
    	height:100%;
    Les carrés restent désespérément blanc plutôt que de devenir bleu (background:#0000FF.
    Du coup retour à la case départ pûisque mon but au final c'est de pouvoir "agir" sur ces fameux carrés...

    Merci.

  8. #8
    Membre averti
    Homme Profil pro
    aux études mais 40 ans
    Inscrit en
    Juin 2004
    Messages
    2 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : aux études mais 40 ans

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 010
    Points : 308
    Points
    308
    Par défaut
    PS : J'ai remis la valeur normale dans le CSS histoire de ne pas foutre le bazard et ensuite de ne plus me souvenir :-)

  9. #9
    Membre expérimenté

    Homme Profil pro
    Webmaster
    Inscrit en
    Mai 2011
    Messages
    1 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 049
    Points : 1 689
    Points
    1 689
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Yepazix Voir le message
    Par contre ce que je ne comprends pas encore bien c'est que même en retournant dans tous les sens tous les dossiers je ne trouve pas de fichier custom-style.css.
    --> Nouvelle question :
    Est il possible (dans Wordpress) qu'un fichier CSS soit "généré" d'une manière ou d'une autre et que donc il n'existe pas dans les fichiers à la base et qu'il soit créé au moment de l'utilisation ?
    Non, le css n'est pas généré automatiquement, ce sont les pages html qui sont générées automatiquement par le php mais pas le css.
    Peut-être que le custom-style.css est généré à partir des spécifications données dans OPTIONS DU THEME du tableau de bord. Ce fichier devrait apparaitre sinon il faudrait demander au support où se trouve ce fichier.

Discussions similaires

  1. Réponses: 6
    Dernier message: 19/07/2006, 14h48
  2. [SQL] erreur dans la requette SQL ou dans le code PHP
    Par jack_1981 dans le forum PHP & Base de données
    Réponses: 19
    Dernier message: 11/07/2006, 22h21
  3. Erreur dans mon code PHP
    Par jack_1981 dans le forum Langage
    Réponses: 6
    Dernier message: 12/05/2006, 11h01
  4. [PHP-JS] Probleme de javascript dans un code php
    Par stomerfull dans le forum Langage
    Réponses: 3
    Dernier message: 23/01/2006, 10h33
  5. [PHP-JS] Probleme de javascript dans un code php
    Par stomerfull dans le forum Langage
    Réponses: 20
    Dernier message: 12/01/2006, 14h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo