GoConqr hat ein neues Design! Sag uns, wie es dir gefällt.

Karteikarten

Custom Menu Development Wordpress

Victor Bini Technical Skills asa Englisch 12 Karten

Karten in diesem Stapel (12)

  1. 1Onde podemos encontrar as senhas de banco de dados e user name?na pasta principal da instalação do Wordpress vamos ter o arquivo wp-config.php lá devemos buscar as constantes: DB_PASSWORD - MySQL database, DB_USER - MySQL user
    (local user, não sei se pega em live servers)
  2. 2Como seria a convenção para salvar items do menu?Por padrão nosso 'plugin' ou library vai vir com:
    menu-item-custom em convenção para salvar dados no banco de dados, devemos alterar para _menu_item_$s conforme a convenção correta para evitar comportamentos estranhos...
    Colocando o '_' nos escondemos esses campos criados no menu de aparecerem como custom_field de um post normal.
  3. 3Como podemos instalar o 'wp-menu-item-custom-fields' ? - disponível no githubpodemos adicionar baixando os arquivos e adicionando como plugin ou colocando em nossa pasta raiz do thema, como uma biblioteca, então pegamos o codigo do arquivo 'walker-nav-menu-edit.php' e colamos em nosso functions.php
    para adicionar uma livraria usamos o comando, require_once () em functions.php
    //comando disponível na documentação.
  4. 4Quais configurações fazemos em nossa function.php para criar 'custom fields' em nossos menu items do wp-admin?devemos custar por addcionar novo custom fields no arquivo copiado, vamos lembrar que ele será salvo no banco de dados como um meta dado - wp_postmeta -
  5. 5Quais são os métodos existems no 'walker' e o que eles representam?Métodos abstrados são métodos que não tem funcionalidades por eles mesmo, são mais como uma framework.
    start_lvl( &$output, $depth = 0, $args = array() )
    "Start Level". This method is run when the walker reaches the start of a new "branch" in the tree structure. Generally, this method is used to add the opening tag of a container HTML element (such as , , or ) to $output.
    end_lvl( &$output, $depth = 0, $args = array() )
    "End Level". This method is run when the walker reaches the end of a "branch" in the tree structure. Generally, this method is used to add the closing tag of a container HTML element (such as , , or
    ) to $output.
    start_el( &$output, $object, $depth = 0, $args = array(), $current_object_id = 0 )
    "Start Element". Generally, this method is used to add the opening HTML tag for a single tree item (such as , , or ) to $output.
    end_el( &$output, $object, $depth = 0, $args = array() )
    "End Element". Generally, this method is used to add any closing HTML tag for a single tree item (such as
    , , or ) to $output. Not
  6. 6Onde podemos encontrar mais informações sobre o walker method?https://codex.wordpress.org/Class_Reference/Walker
  7. 7Qual elemento é formado já com walker_class no wordpress?O proprio nav_menu é criado a partir da class walker. podemos ver isso em wp-menu-template.php na pasta raiz do wordpress.
  8. 8Como fazemos o setup de um 'custom walker'?1º Adicionamos a pasta inc(de include) o arquivo include-walker.php
    2º então copiamos e o inicio do arquivo nav-menu-template.php - dentro do nosso arquivo.
    class WPT_Custom_Walker_Nav_Menu extends Walker {}
    3º incluimos nosso arquivo em nossa functions.php - require_once dirname( __FILE__ ) . '/inc/custom-walker.php';
    4º então para usar, nos argumentos do nosso menu, que passamos como parâmetro para criação ,vamos usar
    'walker' => new WPT_Custom_Walker_Nav_Menu //criando um objeto dessa classe.
    *Vamos ver que uma serie de erros surgiram, mas se copiarmos tudo de 'nav-menu-template.php' em nosso arquivo inc, vamos ver que estamos agora controlando o menu completamente.
    AGORA PODEMOS CUSTOMIZAR O QUE QUISERMOS, BASEADOS NO WORDPRESS PADRÃO.
  9. 9Como obtemos os dados do custom fields, anteriormente criados de nosso banco de dados para serem usados em nosso 'custom walker' menus?a função que vamos utilizar é get_post_meta()
    Ela possui como parametro $meta_values = get_post_meta( $post_id, $key, $single);
    Então por exemplo, vamos em nosso start_el que esta iniciando o nosso item dentro do menu, e vamos colocar no parâmetro $item uma nova propriedade, que é a que criamos no custom-field do menu:
    $item->description = get_post_post_meta( $item->ID, '_menu_item_field_descrition', true ); - o true não retorna um array, somente strings.
    a partir de então podemos acessar os dados e introduzir onde quisermos com $item->description
  10. 10Qual a diferença entre var_dump e var_export?*var_dump is for debugging purposes.
    *var_export prints valid php code. Useful if you calculated some values and want the results as a constant in another script. Note that var_export can not handle reference cycles/recursive arrays, whereas var_dump and print_r check for these.
  11. 11Se não queremos copiar e colar o arquivo do wp_include inteiro, mas sim modificar somente o que queremos, como podemos configurar nosso arquivo em /inc/?devemos então usar extend:
    então devemos usar no arquivo no /inc/:
    class own_walker_nav_menu extends Walker_Nav_Menu
    e não extends Walker...
    isso já traz as bases para nosso arquivo, sem a necessidade de copiar nada.
  12. 12Onde podemos controlar as classes e icones que são introduzidos em nosso walker nav bootstrap? (disponível no github)Devemos adicionar em title-atribute, ele vai avaliar o que foi escrito e aplicar uma mudança de classe com bootstrap ou adicionar um icone do components.
    https://github.com/twittem/wp-bootstrap-navwalker
    adicionamos da mesma forma que nosso navwalker... passando como parâmetro no menu walker=> new ...

Informationen

Beschreibung
asa Technical Skills (WordPress ) Karteikarten am Custom Menu Development Wordpress, erstellt von Victor Bini am 01/02/2017.
Erstellt von
Victor Bini · Feb 2017
Aktualisiert
1 Feb 2017
Aufrufe
2
Bewertung

Feedback

Worum geht es?

Wie gefällt dir das neue Design?

Dein Eindruck