SmartFAQ 由 SmartFactory (https://www.smartfactory.ca) 开发,InBox Solutions (https://www.inboxsolutions.net) 子公司。

如何在其它区块以及页头中显示横幅广告?
创建一个具有以下代码的自定义模块
include_once XOOPS_ROOT_PATH.'/include/functions.php';
global 
$xoopsConfig;
$db =& Database::getInstance();
$bannerobject '';
$bresult $db->query("SELECT COUNT(*) FROM ".$db->prefix("banner"));
list (
$numrows) = $db->fetchRow($bresult);
if ( 
$numrows ) {
    
$numrows $numrows-1;
    
mt_srand((double)microtime()*1000000);
    
$bannum mt_rand(0$numrows);
} else {
    
$bannum 0;
}
if ( 
$numrows ) {
    
$bresult $db->query("SELECT * FROM ".$db->prefix("banner"), 1$bannum);
list (
$bid$cid$imptotal$impmade$clicks$imageurl$clickurl$date$htmlbanner$htmlcode) = $db->fetchRow($bresult);
if (
$xoopsConfig['my_ip'] == xoops_getenv('REMOTE_ADDR')) {
        
// EMPTY
    
} else {
        
$db->queryF(sprintf("UPDATE %s SET impmade = impmade+1 WHERE bid = %u"$db->prefix("banner"), $bid));
}
    
/* Check if this impression is the last one and print the banner */
    
if ( $imptotal == $impmade ) {
        
$newid $db->genId($db->prefix("bannerfinish")."_bid_seq");
        
$sql sprintf("INSERT INTO %s (bid, cid, impressions, clicks, datestart, dateend) VALUES (%u, %u, %u, %u, %u, %u)"$db->prefix("bannerfinish"), $newid$cid$impmade$clicks$datetime());
        
$db->queryF($sql);
        
$db->queryF(sprintf("DELETE FROM %s WHERE bid = %u"$db->prefix("banner"), $bid));
    }
    if (
$htmlbanner){
        
$bannerobject $htmlcode;
    }else{
    
$bannerobject '
.XOOPS_URL.'/banners.php?op=click&bid='.$bid.'" target="_blank">';
        if (
stristr($imageurl'.swf')) {
            
$bannerobject $bannerobject
                
.''
                
.'.$imageurl.'">'
                
.''
                
.'.$imageurl.'" quality=high pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"; type="application/x-shockwave-flash" width="468" height="60">'
                
.''
                
.'';
        } else {
            
$bannerobject $bannerobject.'.$imageurl.'" alt="" />';
        }

        
$bannerobject $bannerobject.'
'
;
}
echo 
$bannerobject;
}
将其保存为 PHP 脚本,并取一个标题。根据需要放置在网页上。注意:确保您的广告适应您使用的块的大小,否则广告会被扭曲并跳出块。


评论归作者所有。我们不对其内容负责。
user

 这意味着我可以创建不同尺寸的横幅吗?


上述描述的块意味着我可以有不同尺寸的横幅吗?

如果可以,我如何将横幅分配到不同的框中?

或者,是否只有一种尺寸的横幅框供所有横幅广告共享?

 
user

 Re: 这是否意味着我能创建不同尺寸的横幅?


我也尝试了这个技巧,以及其他两个类似的技巧,但都没有奏效。它只显示一个带有块标题的空块。除了创建新块、复制粘贴代码并告知它是PHP之外,还需要做什么吗?

 
user

 Re: 这是否意味着我能创建不同尺寸的横幅?


我在2.2.3版的Xoops的定制块中使用了这个方法。对我来说显示正确。我尚未旋转横幅,稍后会测试。

你是否设置为PHP而不是自动?自动设置给我带来了错误。

don (el paso)

 
user

 Re: 这是否意味着我能创建不同尺寸的横幅?


嘿,大家好,

我试用过这个方法,运行良好。不过,我想问一下有没可能指定使用垂直横幅?

你之所以会使用这个,就是为了在页面上有不同类型的横幅。因此,能够指定使用滚动横幅或水平横幅等是非常关键的...

有哪些建议吗?

 
user

 块中的横幅


是否也可以创建一个仅包含以下内容的自定义PHP块?

showbanner();

 
user

 Re: 块中的横幅


我用这个:
将以下代码放入一个自定义块中作为PHP脚本。

echo xoops_getbanner();

 
user

 Re: 块中的横幅


有什么方法可以在块中选出特定的横幅吗?

我试过

echo xoops_getbanner(bid);

但是似乎不起作用

 
user

 Re: 块中的横幅


这只是应该如此

echo xoops_getbanner();

不要在括号之间放置任何内容。它在我的网站上工作。

 
user

 Re: 块中的横幅


有人想出如何在特定位置显示特定横幅吗?或者怎样才能保证垂直横幅只在一个地方显示,水平横幅只在另一个地方显示?

使用

echo xoops_getbanner();

有没有办法指定显示哪个横幅?

 
user

 Xoops横幅系统的革命


有关XOOPS横幅的重要新闻

点击这里

 
user

 保存为PHP脚本


请记得保存为PHP脚本,而不是HTML。
它对我来说完美地工作。

 


Login

Who's Online

272 user(s) are online (21 user(s) are browsing XOOPS FAQ)


Members: 0


Guests: 272


more...

Donat-O-Meter

Stats
Goal: $100.00
Due Date: Aug 31
Gross Amount: $0.00
Net Balance: $0.00
Left to go: $100.00
Make donations with PayPal!

Did you know ?

you can link to any page in the main menu?

Random question

I'm making a module/theme and need some xoops icon resources. Where can I find them?