• No WordPress cheguei a conclusão de que quando você salva ou atualiza uma “página”, é executada a função rewrite_rules_array, mas isso não acontece com posts nem com custom posts, mas preciso que aconteça para meu custom post. Já coloquei o “capability_type” como “page”, mas não adiantou.

    Alguém consegue ajudar?

A visualizar 5 respostas - de 1 a 5 (de um total de 5)
  • Não existe nenhuma função no WordPress denominada “rewrite_rules_array”, existe sim um filtro de chama varias funções (leia-se callbacks) com essa designação, para forçares a chamada desses callbacks podes usar o PHP da seguinte forma

    $varivavel = apply_filters('rewrite_rules_array', $varivavel)

    Uma pergunta, porque queres que o ‘rewrite_rules_array’ seja chamado obrigatoriamente? Talvez haja uma forma melhor de se fazer…

    Thread Starter Gilson de Carvalho

    (@gilsones)

    Fiz um portfolio, que nas configurações dele é semelhande as configuração do WordPress (Pagina inicial e Página de posts), ou seja, tem um <select> Página do Portfolio. Quando essas configurações são salvas, é adicionado no rewrite rules algumas linhas com o slug dessa página.

    Mas se o usuário esquecer e trocar o slug da página que está sendo usada como Portfolio, vai dar pau. Então preciso que ao salvar um “Projeto” (que é um custom post type) preciso que seja criado um novo rewrite rules e adicionar as linhas com o slug correto.

    Ao salvar uma “página” no WordPress ele chama meu callback rewrite_rules_array, mas em posts ou custom post type não chama.

    Tentaste com o flush_rewrite_rules sempre que adicionas / alteras um custom post?

    Thread Starter Gilson de Carvalho

    (@gilsones)

    Sabe qual filtro ou action devo colocar o flush_rewrite_rules ?

    No inicio do processamento do WordPress por exemplo

    function __action_init() {
     global $wp_rewrite;
     $wp_rewrite->flush_rules();
    }
    
    add_action('init', '__action_init');

    PS: podes/deves usar esta função temporariamente, pois é um pouco pesada. Com esta função, irás fazer “rebuild” dos rewrites.

A visualizar 5 respostas - de 1 a 5 (de um total de 5)
  • O tópico ‘Atializar Rewrites Rules do Custom Post’ está fechado a novas respostas.