WordPress 笔记

//导入WordPress函数

include($_SERVER[‘DOCUMENT_ROOT’] . ‘/wp-load.php’);

 

//获取自定义栏目的值

get_post_meta(“文章或者页面id”, “自定义栏目的名称”,true);

get_post_meta($product->id, “selected_icon”,true);//最后参数若为false,则以数组形式返回

WooCommerce 笔记

//获取产品分类缩略图
$thumbnail_id = get_woocommerce_term_meta( “分类id”, ‘thumbnail_id’, true );
$toolObj[“img_url”] = wp_get_attachment_url( $thumbnail_id );
echo “获取分类缩略图:”. $image.”<br/>” ;

 

//产品所属的分类
$terms=get_the_terms($product->id,”product_cat”);

//是否属于哪个分类

//has_term( “分类id”, ‘product_cat’ )

is_object_in_term( ‘产品id’, ‘product_cat’, ‘分类id’ )

//如果是单个产品,获取产品图

if ($product->product_type==”simple”)
{
$img_id = get_post_thumbnail_id();
$img_url = wp_get_attachment_image_src($img_id,”full”);
$data->image_src=$img_url[0];

}

 

//所有可用的产品变量

$product->get_available_variations( );

雷军20年前作文曝光:我会当一辈子程序员

雷军20年前作文曝光:我会当一辈子程序员

雷军表示,我是一个程序员,一个软件工程师。到今天,我也依然是一个程序员,一个软件工程师。

 

本文是20年前他对程序人生的一点看法。20年后的今天,重读之后,这依然是其对程序人生的态度。

“程序人生”的作文

From: Lei Jun

To: Dai Jun

时间: 1996-08-31 00:28

戴老师:

你的命题作文我已经写完,如有不妥之处,请指出。今天下午我已经写完,但突然 ZRM 死机,我没有存盘。晚上只好接着写,真是不幸。文中如有错漏之处可能是我第二遍写漏了。

本文参考过WT和JH的有关讨论信,在此致谢。

=== CUT ===

程序人生

[题记] 如果程序人生的话,这条路太漫长

“程序人生”这个词是什么意思,刚开始时我并不明白。这个词源于业余BBS站,站上PROGRAMMER栏目的中文名就是这个词,英文翻译过来就是”程序员”,但程序人生又比程序员多了很多含义,似乎多了一种沧桑感。但不管这么多,讲讲编程感受不算跑题。

首先我先讲讲自己的路,这样也许大家才能相信我的坦诚和我的这篇编程感受的真实性。这些感受是我个人感受,不全面的地方,请大家指正。

我的程序人生路
————–
我并非天生喜欢电脑,上高中时也没有想过程序员的生活。我学电脑非常偶然,小时候的一个好朋友上大学时选择了电脑专业,为了和这个朋友有更多的共同语言,我也选择了计算机系,开始步入程序人生的道路。

当我学了一点电脑知识后,就发现电脑将是我人生的最爱。读书时,我不是特别会搞关系的人,同学关系说不上差,也好不到那里去。我是八七年上的大学,我们大一下学期才有专业课。当我有资格上机的时候,发现电脑世界太美妙,就一头扎进去。当时用的是 Motorola 68000 (相当于 Intel 8088), 540K 的内存,运行的 UNIX 操作系统,八个人一起用。

大二学 PC,又过了一学期,开始出现在老师的实验室,帮忙干活,当时写了现在还有人用的 RI (一个清内存的小工具)。又过了一个学期,开始和校外的公司接触。大二暑假,和一个朋友组建了 Yellow Rose 组,写了我第一个商品软件 BITLOK 0.99。后来开过公司也写过一些软件。

大学毕业后,分到研究所,不太适应研究所的气氛。跳槽到金山软件公司,开始了职业程序员的生涯。后来成了北京金山软件公司的经理,但我还是一名程序员。

编程的感受
———-

— 程序员活在自己想象的王国里 —

我刚接触电脑就发现电脑的妙处,电脑远没有人那么复杂。如果你的程序写得好,你就可以和电脑处好关系,就可以指挥电脑干你想干的事。

这个时候你是十足的主宰。每每你坐在电脑面前,你就是在你的王国里巡行。这样的日子简直就是天堂般的日子。

电脑里的世界很大,编程人是活在自己想象的王国里。你可以想象到电脑里细微到每一个字节、每一个比特位的东西。

— 我爱编程这个工作,可以肯定我会干上一辈子 —

不少人认为程序员最多干到三十五岁就可以收山换环境了,脑子也差不多该歇歇了,体力也不支了。并认为写程序是年轻人的事情,到了一定岁数,估计没什么人再当程序员了。

当我刚有一点水平的时候,我也认为编程辛苦,也想三十岁后干别的。当我年长一点后就发现了自己的无知。一个人大学毕业就二十一二岁,有点水平的时候可能二十五,接着就是老婆加上孩子和房子等等诸多事情。

一切搞掂的时候,也许就是三十五岁。如果这样的话,我们就不用选择程序人生的道路。

电脑进入我国时间不短,但真正大规模开始用,还是八五年 PC 开始的,因此国内真正写电脑程序的人最长也就写了十几年(不知道是否还有这样的人)。由于电脑应用在国内时间比较短,国内开发的主力是三十五岁以下的年轻人为主。但这不表示程序员如同红粉佳人般的容易衰老。美国和台湾开发以三十四十多岁的人为主。开始的时候,我们觉得我们没有什么不能做的(现在还能听到这样的豪言壮语),而且更要命的是好象我们特别聪明,特别适合开发软件,比老外强得多。当我们真正接触那些杰出的开发人员的时候,发现他们太厉害了,都有十多年的开发经验。虽然也有很多年轻人做了很多好东西,但决大多数的产品出自这些有丰富开发
经验的程序员的手。

刚毕业的时候,编程不仅仅是爱好,而且也成了一辈子的工作。整天不知道写些什么东西,觉得特别没劲,找不到感觉,特别灰心。后来,才明白,只有全身心地投入,程序才会有意识。

写程序简直是在自杀,巨费精力巨费脑子巨累。但我爱编程这个工作,可以肯定我会干上一辈子,虽然我没有打算一生只干这一件事。用一生来编程序是一件既容易又困难的事。如果碌碌无为,为交差写点程序,这样写两辈子的人都有。但如果想全身心地写程序,写十年就不是一件容易的事。现在我不少朋友都洗手了,有时我也想”用什么电脑,Windows 外的世界不是也很大吗?”。面对电脑的时候,立刻顿悟:电脑还是自己最擅长干的事,也是最顺手的事。

— 高级程序员不是追求的目标 —

有的人学习编程技术,是把高级程序员做为追求的目标,甚至是终身的奋斗目标。后来参与了真正的商品化软件开发后,反而困惑了,茫然了。

一个人只要有韧性和灵性,有机会接触并学习电脑的编程技术,就会成为一个不错的程序员。刚开始写程序,这时候学得多的人写的好,到了后来,大家都上了一个层次,谁写的好只取决于这个人是否细心、有韧性、有灵性。掌握多一点或少一点,很快就能补上。成为一个高级程序员并不是件困难的事。

当我上学的时候,高级程序员也曾是我的目标,我希望我的技术能得到别人的承认。后来发现无论多么高级的程序员都没用,关键是你是否能够出想法出产品,你的劳动是否能被社会承认,能为社会创造财富。成为高级程序员绝对不是追求的目标。

— 编程不仅仅是技术,还是艺术 —

有人认为编程是一种熟练工种,也有人把编程说成是艺术创作。这两种意见争论比较激烈。

我们换个工种来看,石匠应该是熟练工种,属于工人,更艺术似乎沾不上边。但正是这些石匠,给我们留下多少文物古迹,如乐山大佛、莫高窟等等。应该说这些石匠给我们留下了无穷的文化财产。

现代软件工业已具相当规模,很多软件的完成需要的是大兵团作战。

一名普通程序员接受编写某一模块的任务后,往往只是写代码,发挥的余地很小。在大项目中,很多程序员只能了解到和自己所编模块相关的很局部的细节,另外还受到开发环境的限制,真的很难体会到自己在从事”艺术”创造,更多的时候是感到自己在从事重体力劳动。有的时候还担心自己苦苦参与的这个项目究竟有没有意义,是不是在同类产品中有竞争力,会不会开发出来以后就因为硬件的发展,操作系统的换代而过时…

我认为编程的工作和石匠比较相似,有很多是技术活甚至是体力活,但编写优秀软件是件很难的事。这两种想法都有片面性,编程应该说两种属性都有。编程不仅仅是技术,也还是艺术。

编程是技术活,才有可能大规模进行,才会有软件工程。也正是编程是艺术,才会有如此多的好产品。

 

原文:http://www.linuxeden.com/html/news/20160324/165404.html

HTML5简史:距离成熟还有多久?

Starling Builder-Starling的用户界面编辑器

客户端演示:http://cache.mindjolt.com/starling-builder/demo/demo_web.html

编辑器演示:https://www.youtube.com/watch?v=cpC-piQlF68

引擎源码:https://github.com/mindjolt/starling-builder-engine

编辑器源码:https://github.com/mindjolt/starling-builder-editor

概述

       Starling Builder 是Starling的用户界面编辑器
        它建立在Starling/Feathers UI 框架之上. 你可以在Starling Builder编辑你的用户界面,然后导出成JSON的布局文件,最后直接在游戏中创建starling显示对象。它提供了一个通过所见即所得的方式快速创建你的游戏界面。

        Starling Builder分两部分:引擎和编辑器。引擎模块负责将布局文件转换成显示对象。游戏和编辑器依赖于它。编辑器是一个创建UI布局的独立程序。

Starling Builder支持以下特性:
  • 创建和编辑 Starling/Feathers/自定义 UI元素
  • 通过编辑配置文件来定制组件和属性
  • 支持嵌套组件(通过Sprite/ LayoutGroup ScrollContainer等等)。
  • 支持嵌套布局(布局包含另一个布局)
  • 支持自定义类
  • 支持本地化和切换语言

如何创建UI

[size=14.3999996185303px]       当你第一次编辑器运行,你需要选择一个工作区。默认情况下,编辑器将从纹理和字体文件夹中加载所有资源。你可以把一些预定义的swf运行时库放在libs文件夹。([color=rgb(6, 160, 240) !important][url=]更多的信息[/url])您选择工作区后,如果这些文件夹不存在,这个应用程序将为您创建空的文件夹。
为了运行演示,您可以下载演示文件,并将其设置为您的工作区文件夹。演示布局文件位于layout 文件夹。

 

当你完成编辑一个布局文件,您可以点击测试按钮来测试ui。您测试的ui是一个重新创建的布局文件。您可以在编辑模式和游戏模式下测试它,根据您的设置略显不同。

如何在游戏中使用它

       您需要做的就是复制引擎源代码(com.sgn.starlingbuilder.engine),资源文件和布局文件到游戏中
       在你的游戏,通过调用UIBuilder.load方法生成显示对象列表。如果你需要改变ui元素,您可以使用getChildByName来制定你要的UI对象并设置其属性。
  1. var data:Object = JSON.parse(new EmbeddedLayouts.mail_popup());
  2. var sprite:Sprite = UIBuilderDemo.uiBuilder.create(data) as Sprite;
  3. addChild(sprite);
在运行时是生成ui的时候,你需要确保ui组件已经连接到您的项目。如果不是,您将需要手动链接它们,例如:
  1. public static const linkers:[url=]Array[/url] = [Button, LayoutGroup;

基于Bootstrap3的轻量级大型导航菜单

 简要教程

  yamm3是一款基于Twitter Bootstrap3的轻量级大型导航菜单插件。该大型菜单使用Bootstrap3标准的导航菜单标签和流式网格系统来制作。它具有顶部固定和响应式等特点,适合用于制作复杂的网站导航菜单。

 

查看演示     下载插件

  安装

  可以通过bower来安装该Bootstrap3大型菜单插件。

1 bower install yamm3 --save

  使用方法

  HTML结构

  

在标准的Bootstrap3导航菜单的<nav>标签的class中添加.yammclass。然后将你的菜单添加到ul.dropdown-menu中。你可以通过.yamm-content来使用带padding的包裹元素。例如:

<nav class="navbar yamm navbar-default " role="navigation">
    ...
    <ul class="nav navbar-nav">
        <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown</a>
            <ul class="dropdown-menu">
                <li>
                    <div class="yamm-content">
                    <div class="row">
                        ...
                </li>
            </ul>
        </li>
    </ul>
    ...
</nav>           
全屏宽度

默认情况下大型下拉菜单是根据内容的尺寸来设置大小,你可以为它添加.yamm-fw class来设置它为全屏宽度。

<nav class="navbar yamm navbar-default " role="navigation">
...
     <ul class="nav navbar-nav">
       <li class="dropdown yamm-fw">
             ...
       </li>
     </ul>
...
</nav>               
CSS样式

下面是该Bootstrap3大型导航菜单的必要CSS样式:

.yamm .nav,
.yamm .collapse,
.yamm .dropup,
.yamm .dropdown {
  position: static;
}
.yamm .container {
  position: relative;
}
.yamm .dropdown-menu {
  left: auto;
}
.yamm .yamm-content {
  padding: 20px 30px;
}
.yamm .dropdown.yamm-fw .dropdown-menu {
  left: 0;
  right: 0;
}               
Javascript

在使用一些手风琴元素和表单元素的时候,如果你不希望它们被折叠,可以使用下面的js代码。

$(document).on('click', '.yamm .dropdown-menu', function(e) {
   e.stopPropagation()
})              

 

   本文版权属于jQuery之家,转载请注明出处:http://www.htmleaf.com/jQuery/Menu-Navigation/201509162579.html