在征服了吐蕃與西突厥以後,東突厥又對大唐發動了進攻。延載元年(694年)正月,吐蕃大汗阿史那默,發兵接連進攻靈州、涼州(治今甘肅武威市)。八月十七日,武則天任命王孝傑為瀚海道(治今蒙古哈爾和林西北)行軍總管,由當時的朔方道大總管薛懷義統一指揮,反擊東突厥的進犯。證聖元年(695年)初,正月二十六日,武則天任命王孝傑為朔方道總管,準備對東突厥發動反擊。
四、再戰失利 貶為庶民
正當王孝傑準備出征進攻東突厥時,吐蕃內部發生內亂。證聖元年(695年)七月十五日,掌握大權的吐蕃大倫噶爾·欽陵及其弟噶爾·讚婆率大軍,對唐朝發動進攻。他取道臨洮(今甘肅臨洮),進軍河西,首先切斷唐與西域的聯係通道,然後進一步奪取西域。第二年,萬歲通天元年(696年)武則天任命王孝傑為肅邊道行軍大總管、婁師德為副總管,征討吐蕃反叛軍隊。這年三月,發生了著名的羅汗山之戰,噶爾·欽陵決定背水一戰,他集中優勢兵力,選擇有利地形,居高臨下,前阻後堵,大敗唐軍,唐軍傷亡慘重。為了取得對吐蕃戰爭的勝利,這次大戰,武則天特別派張仁願為監軍,但張與王向來不和,於是,他以監軍的特權向武則天彙報,說王孝傑要負戰敗的全部責任。武則天盛怒之下,降旨王孝傑免官削為庶民,讓解甲回老家。婁師德占了點便宜,稍好一些被降職使用,貶為原州(今寧夏固原)員外司馬。
五、征討契丹 孝傑陣亡
萬歲通天元年(696年),發生了契丹人鬆漠都督李盡忠、歸誠州刺史孫萬榮的反叛,契丹軍大舉進攻唐朝邊境,攻陷營州,殺死都督趙文祤。這時,武則天因為殺了許多名將,已經派不出什麼大將來,武則天隻好先用突厥軍隊來抵禦契丹,但又怕因此突厥強大,會成為唐朝新的威脅。後來,又勉強派出不怎麼出名的左鷹揚衛將軍曹仁師、右金吾大將軍張玄遇、左威衛大將軍李多祚、司農少卿麻仁節等二十八個將領,出兵征討。八月,在黃麞穀(今河北遷安東北)之戰,唐朝二十八路大軍全部被殲滅,契丹李盡忠也戰死,孫萬榮軍接連攻占了冀州(今河北冀縣)、瀛州(治河間,今屬河北)。武則天這時實在派不出有才幹的將軍擔任統帥,於是想起了被貶的大將、宰相王孝傑。她複詔白衣王孝傑為清邊道總管,率羽林衛將軍蘇宏暉為後軍總管,領兵十八萬,征討契丹孫萬榮軍。神功元年(697年)三月十二日,王孝傑的大軍與契丹孫萬榮大戰於東硤穀,這裏道路狹窄,突厥兵特別多,王孝傑親率精銳之師作為先鋒,且戰且前,等到剛出東硤穀口,契丹兵已經包圍上來,王孝傑急忙布方陣抵禦契丹兵。正在激烈戰鬥之時,後軍總管蘇宏暉因為懼怕契丹軍人多,棄甲而遁,逃之夭夭,陷王孝傑孤軍奮戰。沒有後麵的援兵,契丹軍乘機四麵圍攻,唐軍陣腳潰亂,王孝傑本人被逼墜崖而死,唐軍士兵幾乎全被契丹軍殺死或者跳崖而死。
此時,由武則天派的張說,就是大唐宰相燕國公張說,在唐朝軍隊中任節度管記。他向武則天如實報告了戰況,武則天向他詢問戰場失敗的具體情況,張說極力稱讚了王孝傑的英勇,以少數兵力抵禦眾多敵人,孝忠國家直到獻身,他說:“孝傑忠勇敢死,乃誠奉國,深入寇境,以少禦眾,但為後援不至,所以致敗。”武則天聽了以後,對王孝傑的英勇獻身的事跡非常感動,她下詔追贈王孝傑為夏官尚書,並封為耿國公。任命他的兒子王無擇為朝散大夫。同時,武則天下詔遣使去前線,對臨陣脫逃的蘇宏暉斬首以徇。但是,武則天派去的使者還沒有到達幽州,蘇宏暉已經又立功贖罪,於是就免於死罪。開元中,唐玄宗還懷念著為國捐軀的王孝傑,就升任他的兒子王無擇為左驍衛大將軍,同時,唐玄宗下詔,以恩例追贈王孝傑為特進。