บทความนี้จะแนะนำวิธีการแทรกโฆษณาแบบรูปภาพในภาพเป็นหลักในแต่ละบทความ
แม้ว่าหลายๆ คนได้ให้วิธีการเพิ่มโฆษณาแบบรูปภาพซ้อนภาพลงในแต่ละบทความแล้ว แต่วิธีการที่เรียกว่าเหล่านี้ไม่สามารถบรรลุผลแบบรูปภาพซ้อนรูปภาพของข้อความที่อยู่รอบๆ โฆษณาได้อย่างแท้จริง และสามารถจัดชิดซ้ายหรือขวาเท่านั้น วิธีการที่จะพูดคุยกันในตอนนี้สามารถบรรลุผลการโฆษณาแบบภาพซ้อนภาพได้อย่างแท้จริง เช่นเดียวกับ Sina และ Sohu
ก่อนอื่น เรามาพูดถึงวิธี div+CSS ที่ไม่ถูกต้องกันก่อน ฉันหวังว่าคุณจะไม่เข้าใจผิด:
<div id=outer style=float:left;><div id=inner style=float:left;margin:0;width:200px;height:200px;></div>เนื้อหาข้อความ</div>
ข้างต้นถือได้ว่าเป็นผลจากการจัดตำแหน่งด้านซ้ายเท่านั้น มีวิธีการอื่นอีกมากมายที่นำมาใช้ด้วยความช่วยเหลือของตารางหรือ iframe และไม่มีอะไรมากไปกว่านี้
แล้วเราจะบรรลุผลของการเพิ่มโฆษณาแบบรูปภาพซ้อนภาพทีละชุดในแต่ละบทความได้อย่างไร สามารถทำได้โดยการดักจับฟิลด์ โดยจะมีโค้ดอยู่ 2 ส่วน
ย่อหน้าแรกคือการวิเคราะห์จำนวนคำของเนื้อหาบทความแล้วใส่โค้ดสำหรับโฆษณา:
Dim LeftContent,MidAdContent,RightContent,ModifyContent,headlen,tempStr,headAdStr,tailAdStr'' จะตัดจำนวนสตริงที่เหมาะสม ถ้า len(ArticleContent)<320 แล้ว headlen=200else headlen=320end iftempStr=ArticleContentLeftContent=InterceptString(tempStr,headlen)'รับเนื้อหาข้อความที่ถูกดัก RightContent=Right(ArticleContent,Len(ArticleContent)-Len(LeftContent))ModifyContent=LeftContent &<div style=float:left;><script language=javascript src=http://www.eryi.org/ad.js></script></div>& RightContent
ด้านบนคือการแทรกโฆษณาผ่าน DIV+JS โค้ดโฆษณาจะอยู่ในไฟล์ ad.js นอกจากนี้ยังสามารถแทรกผ่าน table+JS หรือใช้ iframe โดยตรงก็ได้ ไม่ว่าจะด้วยวิธีใด คุณต้องตั้งค่าคุณสมบัติให้จัดชิดซ้ายหรือจัดชิดขวาเพื่อให้สามารถล้อมรอบโฆษณาได้
ย่อหน้าที่สองถัดไปคือการตัดสินโค้ดโฆษณาแบบรูปภาพซ้อนภาพ
ฟังก์ชั่น InterceptString(txt,length)Dim x,y,ii,c,ischines,isascii,tempStrtxt=trim(txt)x = len(txt)y = 0if x >= 1 ดังนั้นสำหรับ ii = 1 ถึง xc=asc(mid (txt,ii,1))ถ้า c< 0 หรือ c >255 ดังนั้น 'คำอธิบายเป็นตัวอักษรจีน y = y + 2 ischines=1 isascii=0else 'คำอธิบายคือรหัส ASCII y = y + 1 ischines=0 isascii=1end if' หากความยาวมากกว่าความยาวของสตริงย่อยที่กำหนด ให้พิจารณาว่ามีสตริงที่ละเอียดอ่อนหรือไม่ และแยกสตริงเหล่านั้นหาก y > = length แล้วถ้า ischines=1 และ StrCount(left(trim(txt),ii),<a)=StrCount(left(trim(txt),ii),</a>) แล้วก็ txt = left(trim(txt),ii) 'ความยาวสตริงที่จำกัด ทางออกสำหรับอย่างอื่น ถ้า isascii=1 แล้ว x=x+1 สิ้นสุดถ้าสิ้นสุด ถ้าถัดไป InterceptString = txtelse InterceptString = สิ้นสุด ifEnd Function' กำหนดจำนวนครั้งที่สตริงปรากฏขึ้น ฟังก์ชัน StrCount(Str,SubStr) Dim iStrCount Dim iStrStart Dim iTemp iStrCount = 0 iStrStart = 1 iTemp = 0 Str=LCase(Str) SubStr=LCase(SubStr) ทำในขณะที่ iStrStart < Len(Str) iTemp = Instr(iStrStart,Str,SubStr,vbTextCompare) ถ้า iTemp <=0 จากนั้น iStrStart = Len(Str) อื่น ๆ iStrStart = iTemp + Len (SubStr) iStrCount = iStrCount + 1 สิ้นสุด ถ้า Loop StrCount = ฟังก์ชัน iStrCountEnd
ยกตัวอย่างระบบการจัดการเว็บไซต์ New Cloud ขั้นแรก ให้ค้นหาไฟล์โค้ด /inc/NewsChannel.asp ที่ขยายหน้าบทความแบบคงที่ (CMS อื่นๆ คล้ายกัน) ใส่โค้ดชิ้นแรกไว้หน้าบรรทัด 248 HtmlContent =แทนที่(HtmlContent, {$ArticleContent}, ArticleContent) และ เพิ่มลงในหน้า ใส่โค้ดชิ้นที่สองจนเหมาะสม จากนั้นเปลี่ยน ArticleContent ในบรรทัดนั้นเป็น ModifyContent