Bonjour à tous,

Je suis confronté à un problème plutôt fâcheux pour lequel je ne trouve aucune solution.
Je compte sur vous

Je souhaite ajouter de nouvelles META à certaines de mes pages.
Exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<meta property="og:title" content="The Rock"/>
Et tout le problème est là, impossible de créer une META "property"...
J'ai tenté d'étendre Zend_View_Helper_HeadMeta en vain.

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
<?php
 
class monProjet_View_Helper_HeadMeta extends Zend_View_Helper_HeadMeta
{
    protected $_typeKeys     = array('name', 'http-equiv', 'charset', 'property');
 
    public function __call($method, $args)
    {
        if (preg_match('/^(?P<action>set|(pre|ap)pend|offsetSet)(?P<type>Name|HttpEquiv|Property)$/', $method, $matches)) {
            $action = $matches['action'];
            $type   = $this->_normalizeType($matches['type']);
            $argc   = count($args);
            $index  = null;
 
            if ('offsetSet' == $action) {
                if (0 < $argc) {
                    $index = array_shift($args);
                    --$argc;
                }
            }
 
            if (2 > $argc) {
                require_once 'Zend/View/Exception.php';
                $e = new Zend_View_Exception('Too few arguments provided; requires key value, and content');
                $e->setView($this->view);
                throw $e;
            }
 
            if (3 > $argc) {
                $args[] = array();
            }
 
            $item  = $this->createData($type, $args[0], $args[1], $args[2]);
 
            if ('offsetSet' == $action) {
                return $this->offsetSet($index, $item);
            }
 
            $this->$action($item);
            return $this;
        }
 
        return parent::__call($method, $args);
    }
 
    protected function _normalizeType($type)
    {
        switch ($type) {
            case 'Property':
                return 'property';
            default:
                return parent::_normalizeType($type);
        }
    }
 
}
Une petite piste s'il vous plaît?
J'espère vous lire très bientôt,

Omageus