jueves, 14 de febrero de 2019

Dinorank❤️te❤️desplaza❤️y❤️Enlazalia❤️te❤️enlaza

En el mundillo SEO de vez en cuando les gusta medírsela para ver quien la tiene más larga.

Por eso, las verdaderas manos que mueven los hilos, gustan de sacar concursos para SEOs en los que por una miseria de premio, tienen a decenas de SEOs dejándose su tiempo y sus horas (y con ello su dinero) para ganar el prestigio de ser nombrado "el mejor SEO de habla hispana", a cambio de un trabajo de link building y menciones sociales quie no tiene precio.

El último concurso de este tipo lo saca Dean Romero, el tio que hay detrás del blog blogger30.com, un blog muy potente con miles de visitas diarias, y un tío que está encantado de conocerse a sí mismo.

Yo, como paso de concursar, pues this is not my bussiness, he escrito esta entrada para ponerle un link a dos amiguetes:

  • El blog de Gastre, que es un tío muy majo, y posiblemente el mejor relaciones públicas del SEO: Dinorank te desplaza y Enlazalia te enlaza.
  • Una página que Diego, otro hipercrack del SEO, ha hecho aprovechando un dominio expirado que tenía sin utilizar:Dinorank te desplaza y Enlazalia te enlaza.

Ala, ahí va mi enlace, en la única mierda de blog que tenía dedicada a esta temática, y que tengo abandonado desde hace muchísimo tiempo. También le meteré un enlace interno desde la página que tengo mejor posicionada de este blog.

¿Por qué se organiza el concurso de Dinorank te desplaza y Enlazalia te enlaza? 


¿Y por qué lo hace? Para promocionar una nueva pala, que acaba de sacar a la venta, dentro de esta fiebre del oro que se está convirtiendo el SEO y ganar dinero con Internet.

Esta pala, o navaja suiza por la cantidad de cosas que dicen que hace, se llama DinoRank.
Si es buena o no no voy a ser yo quien lo diga, que lo diga el mercado.

Yo ni siquiera soy un SEO, soy simplemente un amateur que aspira que algún día le suene la flauta y que alguno de mis experimentes den el suficiente dinero como para empezar a dedicarme a esto.

Junto con Dean Romero, que aporta su comunidad y poder de convocatoria (ya os digo, miles de visitas diarias de SEOs y de aprendices de SEOs como yo), el concurso lo organiza Enlazalia, una enpresa que vende servicios de link building y que es la que aporta la pasta.

La jugada es una obra maestra del marketing, y de la nueva economía colaborativa basada en tener un montón de gente currando por tí por 4 perras. La cantidad de menciones, enlaces, dominios que le enlacen, y actividad en redes sociales que van a conseguir por LITERALMENTE 4 perras.

Los 2.000 euros que van a dar en premios, si se los hubieran gastado en Adwords o en Facebook Ads, los habrían quemado en un plis plas. No quiero pensar el CPC que tendrán las palabras clave por las que podrían pujar estas dos herramientas:

  • Herramienta SEO.
  • Link Building.
  • Enlaces manuales.
  • Tracking de Posiciones.
  • Keyword Research.
  • Análisis de enlaces.
En fin, que los que organizan esto son unos cracks, y creo que los que participan tontos no son. No solo lo hacen por ego, sino por la fama que te puede dar ganar un concurso así, lo que sin duda se traduciría en nuevos clientes y en enlaces a sus webs personales...

Ahora, que las técnicas black hat que van a utilizar no se si son el mejor reclamo para un cliente. Veréis como a los SEOs serios de este país no participan (o al menos no exponen sus webs personales).





viernes, 30 de diciembre de 2011

Passing values from PHP to javascript

Seen in stackoverflow:



What is the easiest way to encode a PHP string for output to a Javascript variable?

I have a PHP string which includes quotes and newlines. I need the contents of this string to be put into a Javascript variable.

Normally, I would just construct my Javascript in a PHP file, ala:

var myvar = "";


However, this doesn't work when $myVarValue contains quotes or newlines.



Expanding on someone else's answer:



This does require PHP 5.2.0 or greater.

miércoles, 30 de noviembre de 2011

Creating dialogs with jquery-ui

<script type="text/javascript">
$(function(){

var options = {
autoOpen: false,
width: 600,
buttons: {
"Ok": function() {
$(this).dialog("close");
}
}
};
$("#dialog").dialog(options);


// Dialog Link
$('#dialog_link').click(function(){
$('#dialog').dialog('open');
return false;
});

//hover states on the static widgets
$('#dialog_link, ul#icons li').hover(
function() { $(this).addClass('ui-state-hover'); },
function() { $(this).removeClass('ui-state-hover'); }
);

});
</script>

miércoles, 2 de noviembre de 2011

jueves, 20 de octubre de 2011

Removing html tags in a php string

Visto en http://php.net/manual/en/function.strip-tags.php 

strip_tags

(PHP 4, PHP 5)
strip_tagsStrip HTML and PHP tags from a string

reject note Description

string strip_tags ( string $str [, string $allowable_tags ] )
This function tries to return a string with all NUL bytes, HTML and PHP tags stripped from a given str. It uses the same tag stripping state machine as the fgetss() function.

reject note Parameters

str
The input string.
allowable_tags
You can use the optional second parameter to specify tags which should not be stripped.
Note:
HTML comments and PHP tags are also stripped. This is hardcoded and can not be changed with allowable_tags.
Note:
This parameter should not contain whitespace. strip_tags() sees a tag as a case-insensitive string between < and the first whitespace or >. It means that strip_tags(" ", " ") returns an empty string.

reject note Return Values

Returns the stripped string.

reject note Changelog

Version Description
5.0.0 strip_tags() is now binary safe
4.3.0 HTML comments are now always stripped

reject note Examples

Example #1 strip_tags() example
$text 'Test paragraph.
 Other text'
;
echo 
strip_tags($text);
echo 
"\n";
// Allow  and 
echo strip_tags($text'');?>

reject note Notes

Warning
Because strip_tags() does not actually validate the HTML, partial or broken tags can result in the removal of more text/data than expected.
Warning
This function does not modify any attributes on the tags that you allow using allowable_tags, including the style and onmouseover attributes that a mischievous user may abuse when posting text that will be shown to other users.

reject note See Also



stripcslashes> <strcspn
[edit] Last updated: Fri, 14 Oct 2011
 
reject note add a
 note add a note User Contributed Notes strip_tags
dhgouveia at hotmail dot com 10-Oct-2011 11:09
this is just for strip the inside tags

$allow = '
  • ';

    $str = '
    Paragraph
    Bold
    Red

    Header

    '
    ;

    $result = strip_tags($str,$allow);
    $result = clean_inside_tags($result,$allow);

    echo
    '';

    //Clean the inside of the tags
    function clean_inside_tags($txt,$tags){
       
       
    preg_match_all("/<([^>]+)>/i",$tags,$allTags,PREG_PATTERN_ORDER);

        foreach (
    $allTags[1] as $tag){
           
    $txt = preg_replace("/<".$tag."[^>]*>/i","<".$tag.">",$txt);
        }

        return
    $txt;
    }

    ?>

lunes, 10 de octubre de 2011

Setting file name in dynamically generated files wiht HTTP headers

Content-Disposition

The Content-Disposition response-header field has been proposed as a means for the origin server to suggest a default filename if the user requests that the content is saved to a file. This usage is derived from the definition of Content-Disposition in RFC 1806 [35].
content-disposition = "Content-Disposition" ":"
                              disposition-type *( ";" disposition-parm )
        disposition-type = "attachment" | disp-extension-token
        disposition-parm = filename-parm | disp-extension-parm
        filename-parm = "filename" "=" quoted-string
        disp-extension-token = token
        disp-extension-parm = token "=" ( token | quoted-string )
An example is
Content-Disposition: attachment; filename="fname.ext"
The receiving user agent SHOULD NOT respect any directory path information present in the filename-parm parameter, which is the only parameter believed to apply to HTTP implementations at this time. The filename SHOULD be treated as a terminal component only.
If this header is used in a response with the application/octet- stream content-type, the implied suggestion is that the user agent should not display the response, but directly enter a `save response as...' dialog.
See section 15.5 for Content-Disposition security issues.


Content-Disposition

The original MIME specifications only described the structure of mail messages. They did not address the issue of presentation styles. The content-disposition header field was added in RFC 2183 to specify the presentation style. A MIME part can have:
  • an inline content-disposition, which means that it should be automatically displayed when the message is displayed, or
  • an attachment content-disposition, in which case it is not displayed automatically and requires some form of action from the user to open it.
In addition to the presentation style, the content-disposition header also provides fields for specifying the name of the file, the creation date and modification date, which can be used by the reader's mail user agent to store the attachment.
The following example is taken from RFC 2183, where the header is defined
Content-Disposition: attachment; filename=genome.jpeg;
         modification-date="Wed, 12 February 1997 16:29:51 -0500";
The filename may be encoded as defined by RFC 2231.
As of 2010, a good majority of mail user agents do not follow this prescription fully. The widely used Mozilla Thunderbird mail client makes its own decisions about which MIME parts should be automatically displayed, ignoring the content-disposition headers in the messages. It also sends out newly composed messages with inline content-disposition for all MIME parts. Most users are unaware of how to set the content-disposition to attachment.[4] Many mail user agents also send messages with the file name in the name parameter of the content-type header instead of the filename parameter of the content-disposition header. This practice is discouraged.[5]

lunes, 29 de agosto de 2011

301 redirection with wikidot pages

Visto en http://doc.wikidot.com/module:redirect

Redirect
Short Description
Performs a "301" redirect from a page with optional URL mapping

Description

The Redirect module performs a "301 Permanently Moved" redirection, i.e. it tells a web browser to request another web page.

Attributes

attribute required allowed values default description
destination yes page-name or URL none where to redirect?
When the destination attribute is just an alphanumeric string, e.g. "start", the page which contains the Redirect module will automatically forward the browser to the wiki page called "start". If destination is the whole URL address (e.g. "http://slashdot.org"), the browser will be redirected to this external address.

Mapping

If the destination attribute ends with a slash, e.g. destination="start/" or destination="http://www.example.com/", the current URL will be mapped to the destination in the following way. The code for the module would be:
[[module Redirect destination="http://www.example.com/base/"]]
Now if the Redirect module is placed on page http://your-wiki.wikidot.com/redir the following mapping will be performed:
from to
http://your-wiki.wikidot.com/redir http://www.example.com/base/
http://your-wiki.wikidot.com/redir/mapped-path http://www.example.com/base/mapped-path
http://your-wiki.wikidot.com/redir/mapped-path/file1.html http://www.example.com/base/mapped-path/file1.html

Preventing the redirect

If the Redirect module redirected the browser always there would be no way to edit the actual page. The solution is to pass an extra parameter to the module in the URL as follows:
http://your-wiki.wikidot.com/page-with-redirect/noredirect/true
There should be an information box where the module is placed.
Working with the Redirect module might not be very convenient but even of you have to do this you will not configure it every day ;-)



Limpiar un Wordpress hackeado

 Check list para limpiar instancias de Wordpress que han sido hackeadas, y para prevenir hackeos. Para técnicos de sistemas con acceso SSH a...