/* connect to db */
function DBconnect() {
$con = mysql_connect("localhost","sofortratgeberl","ttxEDyRHCmJ6wCH7");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
else {
mysql_query('set character set utf8;');
mysql_query("SET NAMES 'utf-8'");
return $con;
}
}
function DBclose($con) {
mysql_close($con);
}
// get related IDs for current page
function get_the_tag_ids() {
global $wp_query;
$postid = $wp_query->post->ID;
$tags = wp_get_post_tags($postid);
foreach($tags as $tag) {
$relevantTags[] = $tag->term_id;
}
if ($relevantTags) {
$args=array(
'tag__in' => $relevantTags,
'post__not_in' => array($postid),
'caller_get_posts'=>1
);
$my_query = new WP_Query($args);
}
else {
$args=array(
'post__not_in' => array($postid),
'caller_get_posts'=>1
);
$my_query = new WP_Query($args);
}
if( $my_query->have_posts() ) {
while ($my_query->have_posts()) {
$my_query->the_post();
$relevantIDs[] = get_the_ID();
}
}
else {
$relevantIDs[] = "";
}
wp_reset_query();
return $relevantIDs;
}
/* get links by post id */
function getRelatedLinks($postID,$length = 255) {
$con = DBconnect();
mysql_select_db('sofortratgeber', $con);
$query1 = "SELECT post_url,keyword FROM sr_links WHERE post_id='$postID' ORDER BY priority DESC";
$result1 = mysql_query($query1);
while ($row = mysql_fetch_array($result1, MYSQL_BOTH)) {
if (strlen($row[1]) > $length) { $dots = "..."; }
$links[] = ''.substr($row[1],0,$length).$dots.'
';
}
$randpos = rand(0,count($links)-1);
mysql_close($con);
return $links[$randpos];
}
function getLinkList($num,$length) {
$idarray = get_the_tag_ids();
foreach ($idarray as $id) {
$linklist[] = getRelatedLinks($id,$length);
}
shuffle($linklist);
if (count($linklist) > $num) { $linklist = array_slice($linklist,0,$num); }
return implode("\n",$linklist);
}
?>
/* str_word_count for utf-8 strings */
function utf8_str_word_count($string,$format=0,$charlist='') {
$array = preg_split("/[^'\-A-Za-zäüöß".$charlist."]+/u",$string,-1,PREG_SPLIT_NO_EMPTY);
//$array = preg_split("/[\W]+/u",$string,-1,PREG_SPLIT_NO_EMPTY);
switch ($format) {
case 0:
return(count($array));
case 1:
return($array);
case 2:
$pos = 0;
foreach ($array as $value) {
$pos = utf8_strpos($string,$value,$pos);
$posarray[$pos] = $value;
$pos += utf8_strlen($value);
}
return($posarray);
}
}
/* connect to db */
function DBconnect1() {
$con = mysql_connect("localhost","test2_wp_ro","VVAQ43ZvefTZZ4Qx");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
else {
return $con;
}
}
function DBclose1($con) {
mysql_close($con);
}
/* get most used keywords */
function getMostUsed($content) {
$charlist = "";
$wordsArray = utf8_str_word_count($content, 1, $charlist);
$wordsWithFrequency = array();
foreach($wordsArray as $word) {
if(array_key_exists($word, $wordsWithFrequency)) {
$wordsWithFrequency[$word]++;
}
else {
$wordsWithFrequency[$word]=1;
}
}
return $wordsWithFrequency;
}
/* get last search queries and most used keywords from referrers */
function getLastReferrers() {
$con = DBconnect1();
mysql_select_db('sofortratgeber', $con);
$uri = $_SERVER["REQUEST_URI"];
$query1 = "SELECT DISTINCT keywords FROM wp_referrers WHERE url='$uri' ORDER BY last_time DESC"; //all referrers matching URI
$result1 = mysql_query($query1);
$i = 0;
while ($row = mysql_fetch_array($result1, MYSQL_BOTH)) {
$i++;
$query2 = "SELECT keywords,last_time FROM wp_referrers_keywords WHERE id = $row[0]"; //queries from last referrers
$result2 = mysql_query($query2);
$row2 = mysql_fetch_row($result2);
if ($i < 11) { //limit for latest queries
if ($row2[0] != "") {
$keywords .= "$row2[0] ($row2[1])
";
$allkw .= "$row2[0] "; //collect all keywords
}
}
else {
$allkw .= "$row2[0] "; //collect all keywords
}
}
//$keywords .= "