¿Cómo integrar Trac y WordPress (como se hace en el blog WP Development)?

4

En mayo, recuerdo haber visto una publicación en el blog de WordPress Development por Alex M (Viper007bond.com) donde agregó funcionalidad para Ticket automático / Revisión / Enlace de diferencia que permite enlazar boletos de Trac, revisiones de Trac y comparaciones de diferencias de Trac.

Quiero hacer lo mismo con un blog interno de WordPress y Trac que tengo para mi negocio. No he visto dónde se lanzó esto como un complemento de WordPress, por lo que esperaba que la gente pudiera orientarme en la dirección correcta sobre cómo hacer esto para hacer esta integración entre Trac y WordPress. Gracias.

    
pregunta ChristLuvsU2 01.11.2010 - 01:41

2 respuestas

6

Aquí está la fuente de la funcionalidad. Es solo un filtro de contenido y algunos regex básicos que escribió uno de mis compañeros de trabajo en Automattic.

add_filter( 'the_content', 'markup_wporg_links' );
add_filter( 'comment_text', 'markup_wporg_links' );

function markup_wporg_links( $content ) {
    $find = array(
        '/(\ |^)#(\d{3,6})(\b|$)/i', // core trac ticket #1234-core in http://core.trac.wordpress.org/ticket/
        '/(\ |^)r(\d{3,6})(\b|$)/i', // core changeset r1234-core in http://core.trac.wordpress.org/changeset/1234
        '/(\ |^)diff:@(\d{3,6}):(\d{3,6})(\b|$)/i', // core diff diff-core:@20:30 https://core.trac.wordpress.org/changeset?new=30&old=20
    );

    $replace = array(
        '<a href="http://core.trac.wordpress.org/ticket/$2">$0</a>', // core trac ticket
        '<a href="http://core.trac.wordpress.org/changeset/$2">$0</a>', // core trac changeset
        '<a href="http://core.trac.wordpress.org/changeset?new=$3&old=$2">$0</a>', // core diff
    );

    preg_match_all( '#[^>]+(?=<[^/]*[^a])|[^>]+$#', $content, $matches, PREG_SET_ORDER );

    foreach ( $matches as $val )
        $content = str_replace( $val[0], preg_replace( $find, $replace, $val[0] ), $content );

    return $content;
}

Modifíquelo para adaptarlo a sus necesidades.

    
respondido por el Viper007Bond 01.11.2010 - 07:29
0

También eche un vistazo a RTC (gratis para 10 usuarios en jazz.net) es la próxima gran cosa.

Combina automáticamente el cambio de sus cosas con los elementos de trabajo adjuntos / diffs / incluso con su planificación. Es el seguimiento de Eclipse (que proporciona un marco de código abierto).

En mi humilde opinión, lo mejor que hay actualmente

    
respondido por el edelwater 01.11.2010 - 01:58

Lea otras preguntas en las etiquetas