Utilisation de WP_Customize_Media_Control (Créer un compte)

  • WordPress :4.9.4
  • Statut : non résolu
  • Ce sujet contient 2 réponses, 1 participant et a été mis à jour pour la dernière fois par artskory, le il y a 7 années.
3 sujets de 1 à 3 (sur un total de 3)
  • Auteur
    Messages
  • #2159223
    artskory
    Participant
    Initié WordPress
    35 contributions

    Bonjour,

    Ma configuration WP actuelle

    • Version de PHP/MySQL : 7.2.2
    • Thème utilisé : thème perso
    • Extensions en place : acune
    • Nom de l’hébergeur : local
    • Adresse du site :

    Problème(s) rencontré(s) :

    Bonjour,

    je cherche à personnaliser mon thème en y insérant une vidéo et je rencontre quelques difficultés.

    // Background video
    $wp_customize->add_section('background_video', array(
    'title' => __("Background video", 'artskory'),
    'priority' => '80'
    ));

    $wp_customize->add_setting('video', array(
    'transport' => 'refresh'
    ));

    $wp_customize->add_control(new WP_Customize_Media_Control($wp_customize, 'background_video', array(
    'type' => 'url',
    'section' => 'background_video',
    'settings' => 'video'
    )));
    customize.php

    À ce stade, je peux choisir une vidéo dans la partie personnalisée de <span class= »spellmod » title= »op, won, épi, hep, pi, pu, px, ph, cep, dép, mW, pep, sep, swap, CPU, JPL, RPC, api, apr, cpt, eh, en, es, eu, ho, ope, ès, do, et, ex, go, no, nô, hop, a, à, lb, TCP, TWM, bop, cap, ftp, gap, pop, top, bd, bu, Hz, ah, ai, an, as, au, aï, cc, ha, hg, hi, hl, hé, mm, ms, oh, os, ou, où, us, vs, Re, ac, al, av, ce, cf, cg, ch, ci, cl, cm, cr, ct, de, dg, dl, dm, dt, du, dz, dé, dû, fa, fi, id, if, il »>wp</span>.

    Je souhaite maintenant afficher ma vidéo.

    <video preload="auto" autoplay="true" loop="true" width="100%">
    <source src="<?php bloginfo( 'url' ) ?>/<?php echo get_theme_mod('video');?>" type="video/mp4">
    </video>
    index.php

    Et là je me retrouve avec un « 212 » en lieu et place du chemin de ma vidéo.

    J’ai d’abord cru à un message d’erreur. Mais en refaisant l’essai sur un <span class= »spellmod » title= » »>wordpress</span> de test ayant dans les médias une image et une vidéo j’obtiens 11 et dans un dernier test j’ai eu 5, mais cette fois-ci en ayant que la vidéo dans les médias. Je suppose que ce soit l’id que je récupère alors qu’il me faudrait son url, mais comment faire ?

    #2159469
    artskory
    Participant
    Initié WordPress
    35 contributions

    J’avance bien, mais ce n’est pas encore ça.
    C’était donc bien l’id que je récupérais.

    Voici l’évolution de mon code :

    // Background video
    $wp_customize->add_section('movie', array(
    'title' => __("Movie", 'artskory'),
    'priority' => '80'
    ));

    $wp_customize->add_setting('video', array(
    'transport' => 'refresh'
    ));

    $wp_customize->add_control(new WP_Customize_Media_Control($wp_customize, 'video', array(
    'section' => 'movie',
    'label' => 'Video',
    'mime_type' => 'video'
    )));

    function echo_theme_movie() {
    $id = get_theme_mod('video');

    echo wp_get_attachment_url($id);
    }
    customize.php

    <video preload="auto" autoplay="true" loop="true" width="100%">
    <source src="<?php echo echo_theme_movie(); ?>" type="video/mp4">
    </video>
    index.php

    Je récupère bien cette fois-ci l’url grâce à la fonction.

    Ce qui ne vas pas :
    Côté admin le site s’affiche bien.
    Mais côté site, la vidéo et tout le reste du code n’est pas exécuté. Une idée ?

    #2159568
    artskory
    Participant
    Initié WordPress
    35 contributions

    Le syndrome d’Inception, vous connaissez ?
    Une fonction dans une fonction, ça ne fonctionne pas.

3 sujets de 1 à 3 (sur un total de 3)
  • Vous devez être connecté pour répondre à ce sujet.