a img { border: solid; }Ahora el problema es que las imágenes que enlazan con SPHPBLOG, RSS, etc. en el menú vertical de la derecha también aparecen con borde. Cuando iba a arreglarlo he visto que esas imágenes llevan el atributo 'border', que no se debe usar según la recomendación de HTML 4.01. Para apañar ambas cosas, entre las líneas 611 y 616 de /themes/complejo/themes.php he sustituido todas las ocurrencias de:
style="margin-bottom: 5px;"
y de:
border="0"
por:
class="webbadges"
y he añadido la clase 'webbadges' al final de /themes/complejo/style.css:
.webbadges { border: 0; margin-bottom: 5px; }Ahora parece que todo va bien.
[ añadir comentario ] ( 241 visualizaciones ) | enlace permanente
Para evitar que al abrir la página del archivo existan al mismo tiempo dos elementos con la misma identificación, 'id=archive_tree_menu', hay que retocar la función 'read_menus_tree' de 'scripts/sb_menu.php'.
En concreto hay que cambiar la línea 246:
$str.= '<div id="archive_tree_menu"><ul>';
Por algo así (lo he metido todo en la misma línea para intentar mantener los números de línea originales):
if ( $max_chars == 300 ) {
$str.= '<div id="archive_tree"><ul>';
} else {
$str.= '<div id="archive_tree_menu"><ul>';
}En realidad es un poco traído por los pelos, pero lo que hago es aprovechar que el parámetro '$max_chars' es diferente las dos veces que se utiliza al llamar a la función (en la línea 27 de 'plugins/archive/plugin.php', donde se crea el menú lateral y donde tiene un valor de '0' y en la línea 83 de 'archives.php', donde se crea la propia página que muestra el archivo, que tiene un valor de '300').
El problema ahora es cambiar el archivo 'style.css' creando un estilo para la nueva identificación 'archive_tree'. Sencillamente copiamos lo que ya hay para 'archive_tree_menu':
#archive_tree ul
{
list-style: none inside;
padding: 0px 0px 0px 10px;
margin: 0px;
}
#archive_tree li
{
margin: 0px;
padding: 0px;
}
El cambio habría que hacerlo en todos los archivos 'style.css', pero yo sólo lo he hecho de momento en 'complejo/style.css', que es el tema que he creado yo y el que estoy usando.
Para rematar la faena hay que arreglar una nueva etiqueta <p> que queda vacía de contenido cuando se muestra un fragmento del contenido de la entrada, así que hay que hacer algún cambio más en las líneas 316 y 319, cambiando '<p />' por algo como '<br />'. Así queda la 316:
$str_day .= substr( $curr_array[ 'entry' ], 0, $max_chars) . " (...)<br /><br />\n";
Y así la 319:
$str_day .= $curr_array[ 'entry' ] . " (...)<br /><br />\n";
He añadido unos puntos suspensivos porque me parecía un poco brusca la forma en que se cortaba la entrada. Todavía da a veces algún error, ya que al mostrar sólo una parte del texto de cada entrada corta por donde toca, aunque sea a mitad de una entidad como > o &, pero me parece que arreglar esto ya sería tratar de hilar demasiado fino.
[ añadir comentario ] ( 82 visualizaciones ) | enlace permanente
Para evitar las etiquetas <p> vacías que daban error de código al ver o introducir los comentarios en comments.php he anulado la línea 62:
// echo( '<p />' );
y he cambiado la línea 72 de:
<?php echo( $lang_string[ 'instructions' ] ); ?><p />
a:
<p><?php echo( $lang_string[ 'instructions' ] ); ?></p>
[ añadir comentario ] ( 160 visualizaciones ) | enlace permanente
Mientras montaba la sección de "noticias y eventos" de Los Marañones, para la que también utilicé Simple PHP Blog, fui corrigiendo algunas cosas más y añadiendo algunas traducciones:
En
upload_img.php he cambiado la línea 36 a:¿Cuántas imágenes quieres subir? <select id="howmany" name="howmany">
En
/scripts/sb_login.php la línea 137 a:$_SESSION[ 'user' ] = 'Administrador';
Y otro montón de traducciones al español en
/languages/spanish/strings.php.En
add_link.php había algunas etiquetas mal cerradas y otros errores de código, que han quedado así:Línea 46:
echo( '<p>' . $lang_string[ 'instructions' ] . '</p>' );
57:
echo '<p>' . $lang_string[ 'instructions_modify' ] . '</p>';
68:
$str .= '<a href="add_link.php?action=up&link_id='.$i.'">' . $lang_string[ 'up' ] . '</a> | ';
74:
$str .= '<a href="add_link.php?action=down&link_id='.$i.'">' . $lang_string[ 'down' ] . '</a> | ';
77:
$str .= '<a href="add_link.php?action=edit&link_id='.$i.'">' . $lang_string[ 'edit' ] . '</a> | ';
78:
$str .= '<a href="add_link.php?action=delete&link_id='.$i.'">' . $lang_string[ 'delete' ] . '</a> ';
102:
<input type="hidden" name="link_id" value="<?php if ( isset( $link_id ) ) { echo( $link_id ); } ?>" />107:
echo ('<select name="static_pages" id="static_pages" onchange="load_static();">' . "\n");127:
<input type="text" name="link_name" id="link_name" value="<?php if ( isset( $link_name ) ) { echo( $link_name ); } ?>" /><br /><br />130:
<input type="text" name="link_url" id="link_url" size="45" value="<?php if ( isset( $link_url ) ) { echo( $link_url ); } else { echo( 'http://' ); }?>" /><br /><br />En
scripts/sb_texteditor.php, he eliminado la línea 303:<!-- <input type="button" class="bginput" value="Center" onclick="ins_styles(this.form.blog_text,'center','');" /> -->
Y en
themes/complejo/themes.php he quitado los atributos a la etiqueta <body> en la línea 440.De momento eso es todo.
[ añadir comentario ] ( 122 visualizaciones ) | enlace permanente
Desde que actualicé a la nueva versión de Simple PHP Blog la fecha de las entradas salía en un híbrido entre español e inglés ("Monday, 7 de July de 2008") y no sabía por qué. Por fin me he decidio, le he echado paciencia, he buscado y rebuscado, he averiguado el porqué y lo he solucionado cambiando la línea 17 del archivo
languages/spanish/strings.php de:$lang_string['locale'] = array('en_US', 'us');a:
$lang_string['locale'] = array('es_ES', 'es');y ahora, pues eso, que la fecha ya sale en español.
Aunque sigue guardando las entradas con la hora del servidor, que está en Nueva York o por ahí, así que todo sale como si lo hubiera escrito seis horas antes. En fin, no se puede tener todo...
[ 1 comentario ] ( 769 visualizaciones ) | enlace permanente
He descubierto un nuevo error de código: al poner cursiva en los títulos de los artículos, el programa intenta ponerla también en el título de la página, y resulta que en HTML dentro de la etiqueta
<title> no se puede incluir una etiqueta <i>.La solución está en la página sb_formatting.php, que es donde se crea la función
get_entry_title, que genera el título de las páginas. He incluido un par de líneas en la línea 852, para que de elimine la etiqueta <i> del título:$title = str_replace('<i>', '', $title);
$title = str_replace('</i>', '', $title);De momento, parece que funciona.
[ añadir comentario ] ( 56 visualizaciones ) | enlace permanente
Desde que actualicé a la nueva versión de Simple PHP Blog sólo aparecían los del 'Administrador' (es decir, los míos) en la sección de "Últimos comentarios". He conseguido encontrar un apaño en el foro de Simple PHP Blog, obra de muddball. Desde aquí, gracias.
En lugar de sustituir el archivo plugins/sidebar/RecentComments/plugin.php al completo, he añadido sus líneas nuevas para conservar los retoques que mencionaba en "Solucionando errores de código HTML" y "Código HTML válido al fin". Ésto último (una etiqueta <p> mal cerrada) se repetía en la nueva versión, en la línea 181. Ya está arreglado.
[ añadir comentario ] ( 763 visualizaciones ) | enlace permanente
autocomplete no es un atributo válido en XHTML 1.0 Transitional, que es en el lenguaje en el que se supone que está escrito esto, así que procedo a eliminar todas sus apariciones. Es decir, en los siguientes archivos y líneas: add_block.php, 116 y 145; add_link.php, 127 y 130; categories.php, 164; colors.php, 171 y 174; comments.php, 82, 86, 88, 93, 96, 101, 103, 106, 108, 190, 195, 198 y 210; contact.php, 53, 58 y 67; emoticons.php, 88; info.php, 59, 62, 65 y 68; install03.php, 73 y 76; install05.php, 52 y 55; manage_users.php, 162, 164, 165, 166 y 167; moderation.php, 45 y 49; options.php, 47, 56, 65, 74, 80, 108, 116, 132, 133, 134, 137, 151 y 168; setup.php, 100, 103, 106, 109, 112, 115133, 136, 175 y 233; /plugins/sidebar/Avatar/plugin.php, 39; /plugins/sidebar/Calendar/plugin.php, 51; /plugins/sidebar/RandomEntry/plugin.php, 39; /plugins/sidebar/RecentComments/plugin.php, 45 y 48; /plugins/sidebar/RecentEntries/plugin.php, 39; /scripts/sb_forms.php, 155; y /scripts/sb_texteditor.php, 245 y 291. Toda una escabechina.Otro de los errores recurrentes es que en el asunto de las páginas a veces aparece esto:
<a name=""> </a>, que no es válido, porque el atributo name tiene que tener algún valor. Para arreglarlo he cambiado la línea 111 de /themes/complejo/themes.php de:$blog_content .= $entry_array[ 'subject' ] . '<a name="' . $entry_array[ 'id' ] . '"> </a></div>' . "\n";
A:
$blog_content .= $entry_array[ 'subject' ] ;
if ( $entry_array[ 'id' ] != '' ) {
$blog_content .= '<a name="' . $entry_array[ 'id' ] . '"> </a>'; }
$blog_content .= '</div>' . "\n";
Lo que añade tres líneas más al código.
Otro error: la imagen del filtro Anti-Spam no tiene el atributo
alt, así que se lo añado como alt="Anti-Spam" en la línea 62 de contact.php y en la 204 de comments.php.Para arreglar una etiqueta <p> en contact.php he cambiado la línea 43 de:
<?php echo ( $lang_string[ 'instructions' ] ); ?><p />
A:
<p><?php echo ( $lang_string[ 'instructions' ] ); ?></p>
Sucedía lo mismo en la línea 31 de login.php, y también la he cambiado.
En login.php no estaban bien cerradas las etiquetas <input>, les falta un atributo
id (para que no diera error la etiqueta <label> de las líneas anteriores), además de que había una etiqueta <p> incorrecta. Total, que he cambiado las líneas 36-40 de:<label for="user"><?php echo( $lang_string[ 'username' ] ); ?></label><br />
<input type="text" name="user" size="40"><p />
<label for="pass"><?php echo( $lang_string[ 'password' ] ); ?></label><br />
<input type="password" name="pass" size="40"><p />
A:
<p><label for="user"><?php echo( $lang_string[ 'username' ] ); ?></label><br />
<input type="text" name="user" id="user" size="40" /></p>
<p><label for="pass"><?php echo( $lang_string[ 'password' ] ); ?></label><br />
<input type="password" name="pass" id="pass" size="40" /></p>
También he aprovechado para ir traduciendo cosas en /languages/spanish/strings.php.
El único fleco que he encontrado es en la página archives.php, donde se repite un atributo
id y en la que además, por la forma que tiene de citar los artículos, aparecen siempre etiquetas sin cerrar o código incorrecto. De momento así se queda.[ añadir comentario ] ( 223 visualizaciones ) | enlace permanente
He vuelto a retocar la línea 25 de /plugins/sidebar/Search/plugin.php porque como la había dejado quedaba una etiqueta <b> vacía. Ahora se queda así:
$str = sprintf('<form method="get" action="search.php"><input type="text" size="16" name="q" /> <input type="submit" value="%s" /></form>', $GLOBALS[ 'lang_string' ][ 'search_go' ] );También he conseguido eliminar una etiqueta <p> que aparecía vacía repetidas veces en la parte de 'Comentarios recientes', cambiando la línea 136 de /plugins/sidebar/RecentComments/plugin.php de:
$str .= $content . '<p />';
A:
$str .= $content . '<br />';
Y la última etiqueta <p> que aparecía vacía en la portada la he quitado desactivando la línea 604 del archivo /themes/complejo/themes.php:
echo( '<p />' );
Y así, finalmente, desaparecen los errores de código y la página pasa el examen del Markup Validation Service del W3C.
Al menos, la página de la portada, porque algunas otras siguen dando errores...
[ añadir comentario ] ( 352 visualizaciones ) | enlace permanente
Cuando se comprueba el código HTML de esto, siempre salen errores. Uno de ellos era lo de name="twisty" que se repetía en los menús de la derecha (el simbolito + o -, según estuviera o no desplegado el menú). He conseguido que no tenga borde y que no de error, cambiando en la línea 501 de /themes/complejo/themes.php de:
border="0" name="twisty"
A:
class="twisty"
Y añadiendo en /themes/complejo/style.css lo siguiente:
.twisty { border: 0; }.Todavía da un error de etiquetas vacías por otro lado. Ya lo cazaré...
[ añadir comentario ] ( 747 visualizaciones ) | enlace permanente

Calendario



