ubercart 每个角色的价格
[07.06.2013 18:56:43] 亚历山大·雅科文科 (PaFFeN): 你好!抱歉又来打扰你,有个问题,如果你能告诉我,我会非常高兴
[07.06.2013 18:56:56] 列夫·米什金: 你好
[07.06.2013 18:57:02] 亚历山大·雅科文科 (PaFFeN): 网站上有两个价格,怎么才能让不同角色购买不同的价格呢
[07.06.2013 18:57:08] 亚历山大·雅科文科 (PaFFeN): 我在用Ubercart做网站
[07.06.2013 18:57:11] 亚历山大·雅科文科 (PaFFeN): Drupal 7
[07.06.2013 18:57:18] 列夫·米什金: 有一个按角色定价的模块
[07.06.2013 18:57:31] 亚历山大·雅科文科 (PaFFeN): 为了更清楚,有批发买家和零售买家
[07.06.2013 19:00:50] 亚历山大·雅科文科 (PaFFeN): 谢谢
[07.06.2013 20:12:48] 亚历山大·雅科文科 (PaFFeN): <?php print render($content['cost']); ?>
<?php print render($content['sell_price']); ?>
还有一个问题,这里在节点中显示两个价格字段
[07.06.2013 20:13:07] 亚历山大·雅科文科 (PaFFeN): 不明白为什么网站管理员能看到cost字段,而匿名用户看不到?
[07.06.2013 20:13:29 | 修改于 21:09:14] 亚历山大·雅科文科 (PaFFeN): 就连普通经理也看不到cost字段
[07.06.2013 21:08:49] 亚历山大·雅科文科 (PaFFeN): 帮帮我
[07.06.2013 21:09:02] 亚历山大·雅科文科 (PaFFeN): (tmi)
[07.06.2013 21:09:14] 列夫·米什金: 啊,什么?sell_price是产品的进货价,不应该给任何人显示
[07.06.2013 21:09:37] 列夫·米什金: cost是显示给用户的价格
[07.06.2013 21:09:43] 列夫·米什金: 不过我可能错了
[07.06.2013 21:09:47] 亚历山大·雅科文科 (PaFFeN): 其实有两个价格,一个是cost,一个是sell_price
[07.06.2013 21:09:53] 亚历山大·雅科文科 (PaFFeN): 正好相反
[07.06.2013 21:10:07] 亚历山大·雅科文科 (PaFFeN): sell_price是必填价格
[07.06.2013 21:10:27] 亚历山大·雅科文科 (PaFFeN): 而cost是额外的
[07.06.2013 21:10:45] 亚历山大·雅科文科 (PaFFeN): 我不明白为什么当我以管理员身份登录时能看到两个字段
[07.06.2013 21:10:55] 亚历山大·雅科文科 (PaFFeN): 而作为普通经理却看不到cost字段
[07.06.2013 21:13:33] 列夫·米什金: 也许可以添加权限?
[07.06.2013 21:13:53] 亚历山大·雅科文科 (PaFFeN): 我检查过了,也是空的,没有什么
[07.06.2013 21:14:41] 列夫·米什金: 那么这个额外价格有什么用?
[07.06.2013 21:15:02] 列夫·米什金: 不能用字段替代它吗?
[07.06.2013 21:15:05] 亚历山大·雅科文科 (PaFFeN): 其实是这样的,有两个价格,一个是给批发商的,另一个是给零售的
[07.06.2013 21:15:24] 列夫·米什金: 那么按角色定价的模块不合适吗?
[07.06.2013 21:15:37] 亚历山大·雅科文科 (PaFFeN): 合适,但不是完全
[07.06.2013 21:16:00] 亚历山大·雅科文科 (PaFFeN): 它将主要价格赋值给sell_price变量
[07.06.2013 21:17:18] 亚历山大·雅科文科 (PaFFeN): http://clip2net.com/s/5bTiwB
[07.06.2013 21:18:09] 亚历山大·雅科文科 (PaFFeN): http://clip2net.com/s/5bTkaN
[07.06.2013 21:18:16] 亚历山大·雅科文科 (PaFFeN): 这就是重点,在第一个截图中是管理员
[07.06.2013 21:18:23] 亚历山大·雅科文科 (PaFFeN): 在第二个是批发商
[07.06.2013 21:18:54 | 修改于 21:19:58] 亚历山大·雅科文科 (PaFFeN): 所以cost字段对批发商消失了,而sell_price则通过price_per模块输出价格
[07.06.2013 21:19:00] 列夫·米什金: 不如把它做成一个额外字段?
[07.06.2013 21:19:06] 列夫·米什金: 网站上会有人批量购买吗?
[07.06.2013 21:19:22] 列夫·米什金: 批发商肯定会先在网站上查看,然后再要求开具发票
[07.06.2013 21:20:07] 亚历山大·雅科文科 (PaFFeN): 会有在线支付Privat 24
[07.06.2013 21:20:17] 亚历山大·雅科文科 (PaFFeN): 这就是我需要price per模块的原因
[07.06.2013 21:20:40] 亚历山大·雅科文科 (PaFFeN): 但它覆盖了sell_price变量
[07.06.2013 21:20:51] 亚历山大·雅科文科 (PaFFeN): 我希望批发商能看到两种价格,零售价格和他们自己的价格
[07.06.2013 21:21:24] 列夫·米什金: 可能需要在node.tpl.php中写自定义代码,以输出这两个价格
[07.06.2013 21:21:51] 列夫·米什金: 因为按角色定价故意隐藏了其他价格。只显示给自己的角色
[07.06.2013 21:22:02] 亚历山大·雅科文科 (PaFFeN): 就是这样!!!!!
[07.06.2013 21:22:08] Lev Myshkin: 需要查看对象 $node,所有价格
[07.06.2013 21:22:08] Александр Яковенко (PaFFeN): 这里还有一个边栏
[07.06.2013 21:22:34] Александр Яковенко (PaFFeN): 但即使我们不使用模块 per,也看不到价格 cost
[07.06.2013 21:23:24] Александр Яковенко (PaFFeN): 这是我在 node--product.tpl 中使用的代码
[07.06.2013 21:23:26] Александр Яковенко (PaFFeN): <!-- 零售价格 --><div class="sell-price-bckg">
<?php print render($content['sell_price']); ?>
<?php print render($content['field_retail_sale']); ?>
</div>
<!--END 零售价格 -->
<!-- 注册用户的批发价格 -->
<?php if ($logged_in): ?><div class="opt-price-bckg">
<?php print render($content['field_price_opt_sale']); ?>
<?php print render($content['cost']); ?>
</div>
<?php else: ?>
<div class="register-price-opt"><strong>批发价格:</strong><br><span class="text-refister-price-opt">注册后可用 <a href="/user/register">注册</a></span></div>
<?php endif; ?>
<!--END 注册用户的批发价格 -->
[07.06.2013 21:27:47] Lev Myshkin: 在变量 $node 中有与价格相关的内容吗?
[07.06.2013 21:28:18] Александр Яковенко (PaFFeN): [list_price] => 950.00000
[cost] => 950.00000
[sell_price] => 1050.00000
[07.06.2013 21:28:32 | 修改于 21:28:33] Lev Myshkin: 那就从 $node 输出吧
[07.06.2013 21:28:46] Александр Яковенко (PaFFeN): 示例
[07.06.2013 21:28:48] Александр Яковенко (PaFFeN): 请
[07.06.2013 21:29:07] Lev Myshkin: print $node->cost
[07.06.2013 21:29:26] Lev Myshkin: 通过 dsm($node) 打印出来
[07.06.2013 21:29:47] Lev Myshkin: 然后点击所需字段,可以直接复制如何访问该字段
[07.06.2013 21:30:22] Lev Myshkin: 当然需要通过 number_format() 去掉一堆零
[07.06.2013 21:30:40] Александр Яковенко (PaFFeN): 我明白了,零确实存在
[07.06.2013 21:36:56] Александр Яковенко (PaFFeN): 奇怪的是,为什么在使用时不输出 <?php print render($content['cost']); ?>
[07.06.2013 21:37:05] Александр Яковенко (PaFFeN): <?php print $node->cost; ?>
[07.06.2013 21:37:08] Александр Яковенко (PaFFeN): 这样可以输出
[07.06.2013 21:37:25] Lev Myshkin: render() 是 Drupal 的函数,它在输出时检查权限
[07.06.2013 21:37:46] Lev Myshkin: 你可以在 api.drupal.org 查看它是如何工作的
[07.06.2013 21:37:49] Александр Яковенко (PaFFeN): http://clip2net.com/s/5bTN0I 消失的批发字样
[07.06.2013 21:38:12] Lev Myshkin: 手动检查角色并根据角色在模板中输出
[07.06.2013 21:38:15] Александр Яковенко (PaFFeN): 对,他看不到它
[07.06.2013 21:38:32] Александр Яковенко (PaFFeN): 有检查的示例吗?
[07.06.2013 21:39:02] Lev Myshkin: global $user;
if(in_array('opt', $user->roles)){
}
[07.06.2013 21:39:15] Lev Myshkin: 参数可能在函数中应该不同
[07.06.2013 21:40:18] Александр Яковенко (PaFFeN): 好的,我现在会尝试
[07.06.2013 21:40:28] Александр Яковенко (PaFFeN): 谢谢你的帮助
[07.06.2013 21:40:33] Александр Яковенко (PaFFeN): 真是太感谢了
[07.06.2013 21:40:49] Lev Myshkin: 不客气,之后我会转到论坛上
[07.06.2013 21:41:20] Александр Яковенко (PaFFeN): 没问题!
[07.06.2013 21:41:33 | 修改于 21:41:39] Александр Яковенко (PaFFeN): 我也在论坛上,只是那里的时间比较长
[07.06.2013 21:41:56] Александр Яковенко (PaFFeN): 没时间,而我们在这里很快就解决了问题